我想要一个转发器生成一堆复选框,例如:
<tr><td><input type="checkbox" name="t" value="11cbf4deb87" /> <input type="checkbox" name="a" value="33cbf4deb87" />stackoverflow.com</td></tr>
<tr><td><input type="checkbox" name="t" value="11cbf4deb88" /> <input type="checkbox" name="a" value="33cbf4deb87" />microsoft.com</td></tr>
<tr><td><input type="checkbox" name="t" value="11cd3f33a89" /> <input type="checkbox" name="a" value="33cbf4deb87" />gmail.com</td></tr>
<tr><td><input type="checkbox" name="t" value="1138fecd337" /> <input type="checkbox" name="a" value="33cbf4deb87" />youporn.com</td></tr>
<tr><td><input type="checkbox" name="t" value="11009efdacc" /> <input type="checkbox" name="a" value="33bf4deb87" />fantasti.cc</td></tr>
Run Code Online (Sandbox Code Playgroud)
问题1:如何在转发器运行时单独引用每个复选框,以便设置唯一值?
我用以下内容对数据进行数据绑定:
<itemtemplate>
<tr>
<td>
<input type="checkbox" name="t"
value="<%# ((Item)Container.DataItem).TangoUniquifier %>" />
<input type="checkbox" name="a"
value="<%# ((Item)Container.DataItem).AlphaUniquifier %>" />
<%# ((Item)Container.DataItem).SiteName %>
</td>
</tr>
</itemtemplate>
Run Code Online (Sandbox Code Playgroud)
或者我应该在OnItemDataBound中以某种方式设置它?
<asp:repeater id="ItemsRepeater"
OnItemDataBound="ItemsRepeater_OnItemDataBound" …Run Code Online (Sandbox Code Playgroud) 有没有办法通过代码移动datarepeater的项目,因为我们运行循环并移动列表/组合框中的项目?谢谢Furqan
我将我的DataRepeater控件绑定到一个包含许多列的表.我想只显示其中的一部分,具体取决于填充的内容.
我应该如何/在哪里进行dataRepeater中的contitional测试?这是我的itemtemplate中的代码:
<% if (0= (DataBinder.Eval(Container.DataItem, "first").ToString().Length))
{
i++;
}
%>
Run Code Online (Sandbox Code Playgroud)
我得到的错误是:CS0103:当前上下文中不存在名称"Container"
我有一个页面,在页面中有一个简单的下拉列表和转发器控件.提交转发器控件绑定到有3列的datasource1.

现在我的要求是如果我选择option2,它应该绑定到包含4列的datasource2.

<asp:Repeater ID="Repeater1" runat="server" OnItemDataBound="Repeater1_ItemDataBound">
<HeaderTemplate>
<tr>
<th align="left">Header1</th>
<th align="left">Header3</th>
<th align="left">Header2</th>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td>
<asp:Label ID="Header1" runat="server" /></td>
<td>
<asp:Label ID="Header3" runat="server" /></td>
<td>
<asp:Label ID="Header2" runat="server" /></td>
</tr>
</ItemTemplate>
Run Code Online (Sandbox Code Playgroud)
同一个转发器是否可以动态绑定到异构数据源?如何在运行时指定标头模板和项模板?是否可以仅使用一个转发器控件和多个异构数据源来实现此方案?
有人可以告诉我如何让这个工作.我想区分转发器控件中的下拉控件.我现在了解生命周期以及缓冲区是如何写入的,但我的替代方案是什么?这是发生了什么
代码文件
Dim repeatTimes((TotalAdInsured - 1)) As Integer
myRepeater.DataSource = repeatTimes
myRepeater.DataBind()
Run Code Online (Sandbox Code Playgroud)
Aspfile
<asp:Repeater ID="myRepeater" runat="server">
<ItemTemplate>
<asp:DropDownList ID="AdTitle<%# Container.ItemIndex %>" runat="server">
<asp:ListItem Selected="True" Value="" Text=""/>
<asp:ListItem Selected="False" Value="Miss" Text="Miss"/>
<asp:ListItem Selected="False" Value="Ms" Text="Ms"/>
<asp:ListItem Selected="False" Value="Mrs" Text="Mrs"/>
<asp:ListItem Selected="False" Value="Mr" Text="Mr"/>
<asp:ListItem Selected="False" Value="Other" Text="Other"/>
</asp:DropDownList>
</ItemTemplate>
</asp:Repeater>
Run Code Online (Sandbox Code Playgroud)
返回此错误
分析器错误消息:'AdTitle <%#Container.ItemIndex%>'不是有效的标识符.
我想处理 DataRepeater 中的 winform 按钮单击,我该怎么做?所有按钮都放在一个 DataRepeater 中
非常感谢
我目前正在尝试使用Windows Powerpack DataRepeater控件来显示DataTable中的数据.
到目前为止,DataRepeater认识到从数据库调用的结果DataTable有8行,但是我无法获得3个文本框(我已将其放入DataRepeater的ItemTemplate中)以显示实际数据行.
DataTable DT = BL.GetDataTable();
BindingSource bSource = new BindingSource();
bSource.DataSource = DT;
DR.DataSource = bSource;
txtEmail.DataBindings.Add("Text", bSource, "Email");
txtID.DataBindings.Add("Text", bSource, "ID");
txtName.DataBindings.Add("Text", bSource, "Name");
Run Code Online (Sandbox Code Playgroud)
因此,一旦查看DataRepeater(DR),您就可以看到8行.如果文本框留下作为DR的一部分,那么它们将在这8行中的每一行上重复,但没有数据.
如果我删除文本框并将它们直接放在表单上,那么在浏览DR时,文本框会显示相应的数据.这不是我正在寻找的行为.
有谁知道如何让文本框显示数据,并成为DataRepeater的一部分?
好的,我对这个问题有几个问题,我希望这次我更清楚.
我想在转发器控件中找到许多下拉控件的值.我最终想要构建一个多维数组,因此我可以遍历每个项目并将它们添加到数据库表中.
<asp:Repeater ID="myRepeater" runat="server">
<ItemTemplate>
<asp:DropDownList ID="AdTitle" runat="server">
<asp:ListItem Selected="True" Value="" Text=""/>
<asp:ListItem Selected="False" Value="Miss" Text="Miss"/>
<asp:ListItem Selected="False" Value="Ms" Text="Ms"/>
<asp:ListItem Selected="False" Value="Mrs" Text="Mrs"/>
<asp:ListItem Selected="False" Value="Mr" Text="Mr"/>
<asp:ListItem Selected="False" Value="Other" Text="Other"/>
</asp:DropDownList>
<asp:TextBox ID="AdFullName" runat="server"></asp:TextBox>
</ItemTemplate>
<ItemTemplate>
<asp:DropDownList ID="AdTitle" runat="server">
<asp:ListItem Selected="True" Value="" Text=""/>
<asp:ListItem Selected="False" Value="Miss" Text="Miss"/>
<asp:ListItem Selected="False" Value="Ms" Text="Ms"/>
<asp:ListItem Selected="False" Value="Mrs" Text="Mrs"/>
<asp:ListItem Selected="False" Value="Mr" Text="Mr"/>
<asp:ListItem Selected="False" Value="Other" Text="Other"/>
</asp:DropDownList>
<asp:TextBox ID="AdFullName" runat="server"></asp:TextBox>
</ItemTemplate>
Run Code Online (Sandbox Code Playgroud)
我希望我的页眉和页脚HTML不要在数据源没有项目的情况下写入.
我怎么做?
这是我的代码:
<asp:Repeater runat="server" ID="rpUbicazione">
<ItemTemplate>
<div class="Field" style="margin-bottom:20px;">
// elements
</div>
</ItemTemplate>
</asp:Repeater>
Run Code Online (Sandbox Code Playgroud)
而我想隐藏第一个元素.所以我尝试改变第一行:
<asp:Repeater runat="server" ID="rpUbicazione" Visible="<%# (Container.ItemIndex != 0) %>">
Run Code Online (Sandbox Code Playgroud)
但似乎它ItemIndex不起作用:它不是一种方法.
我该怎么做?
我们可以在一个命令参数中传递多个 eval 字段吗?
我的代码在这里
<asp:TemplateField HeaderText="Details" SortExpression="source">
<ItemTemplate>
<asp:LinkButton ID="LinkButton1" runat="server" CommandArgument='<%#Eval("source") %>' CommandName="Download" Text='<%#Eval("source") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
如果可能的话,我想在带有命令名称的单个命令参数中传递许多 Eval 字段,请显示任何参考。
datarepeater ×11
asp.net ×7
c# ×6
vb.net ×3
data-binding ×2
powerpacks ×2
.net ×1
asp.net-2.0 ×1
datatable ×1
winforms ×1