C # динамически изменить NavigateUrl HyperLinkField - PullRequest
1 голос
/ 01 декабря 2008

В моем коде я создаю объект HyperLinkField. В зависимости от значения поля базы данных, я хочу установить свойство NavigateUrl. Это моя проблема, я не знаю как.

С:

objHF.DataNavigateUrlFields = new[] { "id", "Stype" };

я получаю поле моей базы данных. Теперь я хочу проверить значение Stype. В зависимости от этого значения я хочу установить страницу, к которой нужно перейти. Как я могу это сделать ??

В конце я устанавливаю свой источник данных на gridview, а после этого вызываю метод bind ().

Я надеюсь, что кто-то может мне помочь

Ответы [ 2 ]

1 голос
/ 13 января 2011

попробуйте так

<%# this.myUrlFunction(Eval("id"), Eval("stype")) %>

это работает

1 голос
/ 01 декабря 2008

Сделайте HyperLinkField как TemplateField и установите NavigateUrl результирующего HyperLink (в разметке) на что-то вроде

<%# myUrlFunction(Eval("id"), Eval("stype")) %>

Затем создайте соответствующую функцию в файле .cs:

private string myUrlFunction(object id, object stype)
{
    return "mypagename.aspx?whatever=" + id.ToString() + 
        "&youwanttodo=" + stype.ToString();
}
...