С# Динамическое изменение NavigateUrl HyperLinkField

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

С участием:

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

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

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

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


person Martijn    schedule 01.12.2008    source источник
comment
что такое печать (строка)? Почему в качестве аргумента используется выражение/назначение С#?   -  person leppie    schedule 01.12.2008


Ответы (2)


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

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

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

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

попробуй так

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

это сработало

person sandeep    schedule 13.01.2011