raika17metal
دوشنبه 07 شهریور 1390, 20:45 عصر
سلام دوستان من تو یه صفحه باید ثبت نام در کلاس درسی رو انجام بدم. اطلاعات کلاس (از قبیل ظرفیت و تعاد ثبت نامی های) در یک GridView نمایش داده میشه.
چطوری میتونم از ثبت نام در کلاسهایی که ظرفیت آنها پرشده جلوگیری کنم؟؟
کد ASP
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="ClassID"
BackColor="White" BorderColor="#CC9966" BorderStyle="None" BorderWidth="1px"
CellPadding="4" EmptyDataText="اطلاعاتی جهت نمایش وجود ندارد">
<RowStyle BackColor="White" ForeColor="#330099" />
<EmptyDataRowStyle ForeColor="#003300" />
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:CheckBox ID="checkboxClass" runat="server"/>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="CourseName" HeaderText="نام دوره" />
<asp:BoundField DataField="LastName" HeaderText="نام استاد" />
<asp:BoundField DataField="Capacity" HeaderText="ظرفیت" />
<asp:BoundField DataField="Registered" HeaderText="ثبت نام شده" />
<asp:BoundField DataField="Date" HeaderText="تاریخ شروع" />
</Columns>
<FooterStyle BackColor="#FFFFCC" ForeColor="#330099" />
<PagerStyle BackColor="#FFFFCC" ForeColor="#330099" HorizontalAlign="Center" />
<SelectedRowStyle BackColor="#FFCC66" Font-Bold="True" ForeColor="#663399" />
<HeaderStyle BackColor="#990000" Font-Bold="True" ForeColor="#FFFFCC" />
</asp:GridView>
کد #C برای ثبت نام
protected void btnRegister_Click(object sender, EventArgs e)
{
foreach (GridViewRow row in GridView1.Rows)
{
if (row.RowType == DataControlRowType.DataRow)
{
DataKey data = GridView1.DataKeys[row.DataItemIndex];
CheckBox check = (CheckBox)row.FindControl("checkboxClass");
if (check.Checked)
{
int stid = int.Parse(Session["StIDForRegister"].ToString());
int classid = int.Parse(data.Value.ToString());
RegisterInsert(stid, classid, true);
}
}
}
Response.Redirect("RegisteredList.aspx");
}
چطوری میتونم از ثبت نام در کلاسهایی که ظرفیت آنها پرشده جلوگیری کنم؟؟
کد ASP
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="ClassID"
BackColor="White" BorderColor="#CC9966" BorderStyle="None" BorderWidth="1px"
CellPadding="4" EmptyDataText="اطلاعاتی جهت نمایش وجود ندارد">
<RowStyle BackColor="White" ForeColor="#330099" />
<EmptyDataRowStyle ForeColor="#003300" />
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:CheckBox ID="checkboxClass" runat="server"/>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="CourseName" HeaderText="نام دوره" />
<asp:BoundField DataField="LastName" HeaderText="نام استاد" />
<asp:BoundField DataField="Capacity" HeaderText="ظرفیت" />
<asp:BoundField DataField="Registered" HeaderText="ثبت نام شده" />
<asp:BoundField DataField="Date" HeaderText="تاریخ شروع" />
</Columns>
<FooterStyle BackColor="#FFFFCC" ForeColor="#330099" />
<PagerStyle BackColor="#FFFFCC" ForeColor="#330099" HorizontalAlign="Center" />
<SelectedRowStyle BackColor="#FFCC66" Font-Bold="True" ForeColor="#663399" />
<HeaderStyle BackColor="#990000" Font-Bold="True" ForeColor="#FFFFCC" />
</asp:GridView>
کد #C برای ثبت نام
protected void btnRegister_Click(object sender, EventArgs e)
{
foreach (GridViewRow row in GridView1.Rows)
{
if (row.RowType == DataControlRowType.DataRow)
{
DataKey data = GridView1.DataKeys[row.DataItemIndex];
CheckBox check = (CheckBox)row.FindControl("checkboxClass");
if (check.Checked)
{
int stid = int.Parse(Session["StIDForRegister"].ToString());
int classid = int.Parse(data.Value.ToString());
RegisterInsert(stid, classid, true);
}
}
}
Response.Redirect("RegisteredList.aspx");
}