尝试在单击复选框时增加整数

时间:2016-09-08 17:48:11

标签: asp.net scope increment

我有一个范围问题(我认为)试图增加一个整数。

我有几个CheckBox,并希望限制用户只选择最多三个。所以,我想在每个复选框点击上增加一个整数,我可以检查。

我的Default.aspx

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False">
                    <Columns>
                        <asp:TemplateField>

            <ItemTemplate>

                <asp:CheckBox ID="chkRow" runat="server" autopostback="true" OnCheckedChanged="MyCheckBoxes_SelectedIndexChanged"/>

            </ItemTemplate>

        </asp:TemplateField>

       <asp:BoundField DataField="Title" />
        <asp:BoundField DataField="Publisher" />
        <asp:BoundField DataField="Genre" />
                    </Columns>
                </asp:GridView>

我的Default.aspx.cs

       public partial class _Default : Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!this.IsPostBack)
            {
                DataSet ds = new DataSet();
                ds.ReadXml(MapPath("App_Data/publications.xml"));
                GridView1.DataSource = ds;
                GridView1.DataBind();

            }
        }

        private static int mycount = 0;

        protected void MyCheckBoxes_SelectedIndexChanged(object sender, EventArgs e)
        {  
                Label1.Text = mycount.ToString();
                Increment(mycount);
        }

        public static void Increment(int mycount) 
        { 
            mycount++; 
        }
}

我的Label1始终显示为0.

1 个答案:

答案 0 :(得分:0)

名称在Increment的方法范围内重叠。在增量方法

中删除mycount作为参数