c# – 如何在GridView的CommandArgument中传递多个参数?

我正在研究asp.net GridView控件.现在我需要编辑一些行数据.为此,我使用此代码

<asp:LinkButton ID="btnEdit" Text="Edit" runat="server" CommandName="QuickEdit"  OnClick="btnEdit_Click"
  CommandArgument ='<%# ((CheckBox)(((GridViewRow) Container).Cells[4].Controls[0])).Checked %>'/>

而btnEdit_Click方法是:

protected void btnEdit_Click(object sender,EventArgs  e)
{
    LinkButton btn = (LinkButton)sender;
    switch (btn.CommandName)
    {
        case "QuickEdit":

        EditPanel.Visible = true;
        GridPanel.Visible = false;
        CheckBox cbRequiresstate = (CheckBox)EditPanel.FindControl("checkRequiresstate");

        if (btn.CommandArgument =="True")
        {
            cbRequiresstate.Checked = true;
        }
        else
        {
            cbRequiresstate.Checked = false;
        }

        break;
    }
}

现在,我需要将多个参数作为CommandArgument传递给该btnEdit_Click方法.为此,我需要做什么?
请建议我在该方法中使用这些参数的好方法.

解决方法

这是一个例子:

在您的aspx代码中:

<asp:ImageButton ID="btnSelect" runat="server" ImageUrl="~/Images/btnSelect.png" CommandName="Select" CommandArgument='<%# Container.DataItemIndex +";"+Eval("ID") %>' ToolTip="select" CausesValidation="False" /></ItemTemplate>

并在您的代码后面:

string info = e.CommandArgument.ToString();
    string[] arg = new string[2];
    char[] splitter = { ';' };
    arg = info.Split(splitter);

相关文章

目录简介使用JS互操作使用ClipLazor库创建项目使用方法简单测...
目录简介快速入门安装 NuGet 包实体类User数据库类DbFactory...
本文实现一个简单的配置类,原理比较简单,适用于一些小型项...
C#中Description特性主要用于枚举和属性,方法比较简单,记录...
[TOC] # 原理简介 本文参考[C#/WPF/WinForm/程序实现软件开机...
目录简介获取 HTML 文档解析 HTML 文档测试补充:使用 CSS 选...