c#,asp.net datalist - 传递变量 [英] c#, asp.net datalist - passing variables
本文介绍了c#,asp.net datalist - 传递变量的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
您好,
我正在尝试查看会话[用户名] =某事。
如果是这样的图片链接将是'A'其他将是'B'。
这里是我的代码:
< asp:DataList ID = DataList1 < span class =code-attribute>
runat = server ShowHeader = False CellSpacing = 2 跨度> >
< HeaderTemplate >
图片...
< / HeaderTemplate >
< ItemStyle / >
< ItemTemplate >
< asp:ImageButton ID = ImageButton1 runat = server
< span class =code-attribute>
ImageUrl =' <% #Eval( image_path, 〜/ Images / {0})%> ' style < span class =code-keyword> = padding:2px; 宽度 = 50px 高度 = 50像素 / >
< / ItemTemplate >
< / asp:DataList >
我的c#代码:
con.Open();
cmd = new SqlCommand( 选择Image_path来自表WHERE image_id = something,con);
da = new SqlDataAdapter(cmd);
dt = new DataTable();
da.Fill(dt);
DataList1.DataSource = dt;
DataList1.DataBind();
// 我如何写这个?
if (session [ username] == something)
{
// Datalist.ImageButton1.ImageUrl = Eval( image_path,/ location A)
}
else
{
// Datalist.ImageButton1.ImageUrl = Eval(image_path,/ location B)
}
解决方案
尝试这样的事情;)
foreach (DataListItem item in myDataList.Items)
{
ImageButton myImageButton =(ImageButton)item.FindControl ( ImageButton1);
if (session [ username] =某事)
{
myImageButton.ImageUrl = ...
}
else
{
myImageButton.ImageUrl = ...
}
}
嗨试试这个
< asp:DataList ID = dlList runat = server ShowHeader = False CellSpacing = 2 OnItemDataBound = dlListItemBinding >
< < span class =code-leadattribute> ItemTemplate >
< asp:ImageButton ID = ImageButton1 runat = server style = padding:2px; Width = 50px 高度 = 50px / >
< / ItemTemplate >
< / asp:DataList >
protected void dlListItemBinding( object sender,DataListItemEventArgs e )
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
if (会话[ value] == A)
{
((ImageButton)e.Item.FindControl( ImageButton1 ))。ImageUrl = 〜/ Image / ImageA.png; // 更改此处的路径
}
else
{
((ImageButton)e.Item.FindControl( ImageButton1))。ImageUrl = 〜/ Image / ImageB.png ; // 更改此处的路径
}
}
}
Hello,
I am trying to check if session["username"] = something.
if so image link will be 'A' else will be 'B'.
here is my code:
<asp:DataList ID="DataList1"
runat="server" ShowHeader="False" CellSpacing="2">
<HeaderTemplate>
Images ...
</HeaderTemplate>
<ItemStyle />
<ItemTemplate>
<asp:ImageButton ID="ImageButton1" runat="server"
ImageUrl='<%# Eval("image_path","~/Images/{0}")%>' style="padding: 2px;" Width="50px" Height="50px" />
</ItemTemplate>
</asp:DataList>
my c# code:
con.Open();
cmd = new SqlCommand("select Image_path from table WHERE image_id = something ", con);
da = new SqlDataAdapter(cmd);
dt = new DataTable();
da.Fill(dt);
DataList1.DataSource = dt;
DataList1.DataBind();
// How do i write this ?
if (session["username"] == something)
{
// Datalist.ImageButton1.ImageUrl = Eval("image_path","/location A")
}
else
{
// Datalist.ImageButton1.ImageUrl = Eval("image_path","/location B")
}
解决方案
Try something like this ;)
foreach (DataListItem item in myDataList.Items) { ImageButton myImageButton = (ImageButton )item.FindControl("ImageButton1"); if (session["username"] = something) { myImageButton.ImageUrl = ... } else { myImageButton.ImageUrl = ... } }
Hi try this
<asp:DataList ID="dlList" runat="server" ShowHeader="False" CellSpacing="2" OnItemDataBound="dlListItemBinding"> <ItemTemplate> <asp:ImageButton ID="ImageButton1" runat="server" style="padding: 2px;" Width="50px" Height="50px" /> </ItemTemplate> </asp:DataList>
protected void dlListItemBinding(object sender, DataListItemEventArgs e) { if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) { if (Session["value"] == "A") { ((ImageButton)e.Item.FindControl("ImageButton1")).ImageUrl = "~/Image/ImageA.png"; // change the path here } else { ((ImageButton)e.Item.FindControl("ImageButton1")).ImageUrl = "~/Image/ImageB.png"; // change the path here } } }
这篇关于c#,asp.net datalist - 传递变量的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文