gpt4 book ai didi

asp.net - 在 ASP.NET Repeater 中动态添加控件

转载 作者:行者123 更新时间:2023-12-02 10:27:30 25 4
gpt4 key购买 nike

我发现自己有一个转发器控件,该控件正在将数据绑定(bind)到 xml 文档。我的客户现在请求重复器的文本框可以是文本框或复选框。

我似乎找不到一种简单的方法来基本上执行以下操作:

if ((System.Xml.XmlNode)e.Item.DataItem.Attributes["type"] == "text")
<asp:TextBox runat="server" ID="txtField" Text='<%#((System.Xml.XmlNode)Container.DataItem).InnerText %>' CssClass="std"></asp:TextBox>
else
<asp:CheckBox runat="server" ID="txtField" Text='<%#((System.Xml.XmlNode)Container.DataItem).InnerText %>' CssClass="std"></asp:TextBox>

有没有一种好的方法可以扩展我当前的实现而不必重写逻辑。如果我可以通过“OnItemDataBound”注入(inject)控件,那也很好。但我似乎无法让它发挥作用

最佳答案

在转发器中,放置一个面板,然后为转发器的数据绑定(bind)事件创建一个事件处理程序,并以编程方式创建 TextBox 或 CheckBox,并将其添加为面板的子控件。您应该能够从事件参数中获取 DataItem,以获取“type”属性或值等信息,以提供 Text 属性或 css 信息等。

关于asp.net - 在 ASP.NET Repeater 中动态添加控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/128083/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com