Показать кнопку с изображением как HTML - PullRequest
0 голосов
/ 27 июля 2011

Можно ли показать asp: ImageButton как HTML?

Ниже приведен фрагмент кода;

e.Row.Cells[0].Text = "<img src='Images/desc.gif' >";

, который мне нужно заменить на asp: imagebutton из-за его свойства postbackURL (так как он поддерживает навигацию)

Следовательно, я заменил свой код как;

e.Row.Cells[0].Text = "<asp:ImageButton id=imgtempasc runat=server ImageUrl=~/Images/tempasc.gif PostBackUrl=~/OT_Overview_Home.aspx >";

чтобы показать кнопку изображения вместо картинки (как в коде # 1), но код # 2 не работает

спасибо!

Ответы [ 3 ]

0 голосов
/ 27 июля 2011

Вы можете использовать ASP: HyperLink!

Элемент управления Hyperlink имеет свойство ImageUrl, которое можно использовать для установки изображения для вашей ссылки.

<asp:HyperLink runat="server"
 ID="myHyperLink" ImageUrl="~/foo.jpg" 
 NavigateUrl="~/YourUrl.aspx"></asp:HyperLink>

Вы можете делать с гиперссылкой все, что захотите.

0 голосов
/ 27 июля 2011

Я действительно не понимаю, почему вы не можете использовать HyperLink, если вы изменяете ячейку в своем коде? Особенно, если все, что вы делаете, это отправляете пользователя на другой URL.

Если вы просто отправляете пользователя с одного URL-адреса на другой, это не сработает

e.Row.Cells[0].Text = "<a href='http://yoururl'><img src='Images/desc.gif' ></a>";

Если вам требуется, чтобы данные формы были отправлены с существующей страницы на другую страницу, вам нужно будет сделать то, что предложил Андреас Нидермайр, и динамически добавить элемент управления в GridView

0 голосов
/ 27 июля 2011

Полагаю, вы хотите изменить свою коллекцию элементов управления. поэтому вам нужно будет сделать это правильно, как это:

var imageButton = new ImageButton
{
    ImageUrl = "~/Images/asc.gif",
    PostBackUrl = "~/Home.aspx"
};
e.Row.Cells[0].Controls.Add(imageButton);
...