これらのコントロールへの参照を取得し、Set Visibleプロパティをfalseに設定する必要があります。この擬似コードのようなもの。
ShoppingCartControlVariable.FinControl( "idOfTheControlYouWantToHide")。Visible = false;
は(OnItemCreatedハンドラに気づく)あなたはこのようなリピーターを持っていると仮定すると::
<asp:Repeater ID="myrepeater" runat="server" OnItemCreated="myrepeater_ItemCreated">
<HeaderTemplate>
<table>
<thead>
<th>
Link
</th>
<th>
Button
</th>
</thead>
<tbody>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td>
<asp:HyperLink ID="link" runat="server" Text='<%#Eval("Text")%>' NavigateUrl='<%#Eval("Url")%>'></asp:HyperLink>
</td>
<td>
<asp:Button ID="btnDelete" runat="server" Text="Delete" />
</td>
</tr>
</ItemTemplate>
<FooterTemplate>
</tbody> </table>
</FooterTemplate>
</asp:Repeater>
あなたが/非表示にすることができますこれがどのように行われるかを証明するために、サンプルコードを追加
See this documentation
リピータ行の要素を次のように表示します。
protected void myrepeater_ItemCreated(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item && (boolean_condition_that_on_which_you_will_decide_what_to_show_and_what_to_hide))
{
e.Item.FindControl("link").Visible = false;
}
}
私はすべての行のすべてのリンク要素を隠し、単に削除ボタンを残しておきたい場合たとえば、私はこれを行うことができます。
protected void myrepeater_ItemCreated(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType==ListItemType.AlternatingItem)
{
e.Item.FindControl("btnDelete").Visible = false;
}
}
そしてそれは、この生成します。参考のために
を私のリピータに設定したコードは次のとおりです。
List<CartItem> items = new List<CartItem>();
for (int i = 0; i < 10; i++)
{
CartItem t = new CartItem();
t.Text="Item " +i;
t.Url="http://www."+i+".com";
items.Add(t);
}
myrepeater.DataSource = items;
myrepeater.DataBind();
ユーザーコントロール内のユーザーコントロールまたはボタンを非表示にしようとしていますか? –
ユーザーコントロールの中にあるリピーター内のボタン。 – ComfortablyNumb