0
ここにリピータコードのスナップショットがあります。私はすべての価値を得ることに問題があります。結果として、私の "リピータ"はコレクションの最初の要素だけを出力します。asp:Repeater - "StringEnumerator"を "ItemDataBound"の次の項目に移動する方法
<asp:Repeater ID="repeatAdministrators" OnItemDataBound="repeatAdministrators_ItemDataBound" runat="server">
<HeaderTemplate>
<tr>
<td class="formLabel">
Administrators:
</td>
<td class="formInputText">
</HeaderTemplate>
<ItemTemplate>
<asp:TextBox ID="txtAdministrators" runat="server" MaxLength="50" Enabled="False"></asp:TextBox><br />
</ItemTemplate>
<FooterTemplate>
</td> </tr>
<tr>
</FooterTemplate>
</asp:Repeater>
ここでは、コレクションのインデックスを変更するコードの背後にあるコードです。 AdminsEnumerator.MoveNext();
が期待どおりに機能しません。 int t; i++; StringCollection[i]
のようなものを追加するのは面倒です。より簡単なソリューションはありますか?
protected void repeatAdministrators_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
TextBox txtAdministrators = e.Item.FindControl("txtAdministrators") as TextBox;
StringEnumerator AdminsEnumerator = Computer.Administrators.GetEnumerator();
AdminsEnumerator.MoveNext();
txtAdministrators.Text = AdminsEnumerator.Current;
}
}
おかげでたくさん!それは本当に簡単です:) –