【问题标题】:Selecting gridview row with a radiobutton in ASP.Net在 ASP.Net 中使用单选按钮选择 gridview 行
【发布时间】:2012-10-03 01:53:00
【问题描述】:

我想要一个带有单选按钮列的网格视图,以便 只选择一行并执行一些任务。我添加了一个模板字段,但是当我 运行应用程序,它让我选择所有行,但我想要的是 只选择一个。我怎样才能做到这一点?我的意思是,我想要单选按钮 列作为一个组工作。

【问题讨论】:

  • 那么你要问的是,一旦选择了一行的单选按钮,就禁用所有其他行?
  • 以后请使用有意义的标题。 “asp.net 中的gridview”是一个非常宽泛的标题。

标签: asp.net gridview


【解决方案1】:

微软发了Tutorial for that

【讨论】:

  • 那个教程非常有帮助
【解决方案2】:

尝试在模板中将单选按钮标记实例化为文字,例如:

  internal class RadioButtonTemplate : ITemplate, INamingContainer
        {
            public void InstantiateIn(Control container)
            {
                Literal radButton = new Literal();
                radButton.ID = "RadioButtonMarkup";
                radButton.Text = "<input type='radio' name='myRadioButton' id='myRadioButton' value='<%# Eval(" + "CategoryID" + "%>'/>";
                container.Controls.Add(radButton);
            }
        }

【讨论】:

  • @SpikeX:与您的解决方案相反?
  • 我的解决方案更像是一个建议或修复,假设他已经有了需要修复的现有代码。
【解决方案3】:

您是否设置了“GroupName”属性?像这样的东西,例如:

<asp:GridView runat="server" ID="MyGridView">
    <Columns>
        <asp:TemplateField HeaderText="Select">
            <ItemTemplate>
                <asp:RadioButton runat="server" ID="myRB" GroupName="MyRadioButton" />
            </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="Some Other Column">
            <ItemTemplate>
                <%-- other stuff here --%>
            </ItemTemplate>
        </asp:TemplateField>
    </Columns>
</asp:GridView>

您还可以将&lt;asp:RadioButton&gt; 替换为标准的&lt;Input&gt; 字段,然后将Value="" 属性绑定到唯一的东西(例如行ID)。

【讨论】:

    猜你喜欢
    • 2015-11-11
    • 2011-05-03
    • 2013-07-27
    • 1970-01-01
    • 1970-01-01
    • 2014-10-12
    • 2015-09-05
    • 2010-11-10
    • 1970-01-01
    相关资源
    最近更新 更多