Asp.net 如何根据数据库中的整数值生成复选框字段?

Asp.net 如何根据数据库中的整数值生成复选框字段?,asp.net,vb.net,gridview,checkbox,Asp.net,Vb.net,Gridview,Checkbox,我想使用GridView生成复选框字段,系统将根据totalDay的数量计算要显示的字段数。 如果数据库中存储的totalDay为7,则调用eventID时将生成7个复选框,D1-D7复选框字段将出现;如果totalDay为5,它将生成5个复选框,D1-D5复选框字段将出现 在PHP中,我根据totalDay值自动生成所需的D字段数。但是我不知道如何用VB编写代码 PC展会活动持续7天,因此在用户选择要预订的活动和展位后,它将显示7个复选框: 2012嘉年华会持续5天,因此在用户选择要预订的活

我想使用GridView生成复选框字段,系统将根据totalDay的数量计算要显示的字段数。 如果数据库中存储的totalDay为7,则调用eventID时将生成7个复选框,D1-D7复选框字段将出现;如果totalDay为5,它将生成5个复选框,D1-D5复选框字段将出现

在PHP中,我根据totalDay值自动生成所需的D字段数。但是我不知道如何用VB编写代码

PC展会活动持续7天,因此在用户选择要预订的活动和展位后,它将显示7个复选框:

2012嘉年华会持续5天,因此在用户选择要预订的活动和展位后,会显示5个复选框:

PHP中可以生成复选框的代码:

$query = "select * from booths, eventinfo where booths.eventID=eventinfo.eventID && booths.eventID = ".$id."";

$_SESSION['EVENT_ID']=$id;
$result = mysql_query($query);
$result2= mysql_query($query);


echo "<table border='0' style='width:400px;table-layout:fixed'>";


$rows2 = mysql_fetch_array($result);
$Day=$rows2['totalDay'];
echo "<table>";
for ($day = 0; $day <= $Day; ++$day) {
    if($day==0){
        echo "<th>Booth</th>";
    }else{
         echo "<th>D".$day."</th>";
    }
}

while($rows = mysql_fetch_array($result2)){
    $boothAlias=$rows['boothAlias'];
    $totalDay=$rows['totalDay'];
    $boothID=$rows['boothID'];


    echo "<tr><td>$boothAlias</td>";
    for ($day2 = 1; $day2 <= $totalDay; ++$day2) {

        $d=$rows["D$day2"];

        if ($d==0){
            echo "<td><input name='totalDay[]' type='checkbox' value='$boothAlias $boothID $day2'/></td>";

        }else{
            echo "<td><input name='totalDay[]' type='checkbox' value='$boothAlias $day2' disabled='true'/></td>";
            }
        }
        echo "</tr>";
}

echo "</table>";
}
}
$query=“select*from booths,eventinfo其中booths.eventID=eventinfo.eventID&&booths.eventID=“.$id.”;
$\会话['EVENT\u ID']=$ID;
$result=mysql\u query($query);
$result2=mysql\u查询($query);
回声“;
$rows2=mysql\u fetch\u数组($result);
$Day=$rows2['totalDay'];
回声“;
对于($day=0;$day)


我认为使用
复选框列表
控件会容易得多:

<asp:CheckBoxList ID="CheckList1" runat="server" 
    RepeatLayout="Table" 
    RepeatDirection="Horizontal" 
    RepeatColumns="7" 
    DataTextField="DayName" 
    DataValueField="DayNumber">
</asp:CheckBoxList>                  

我认为您希望使用
中继器
而不是
GridView
。但是,您的SQL查询似乎总是返回7天。从何处可以确定此动态天数?
<asp:CheckBoxList ID="CheckList1" runat="server" 
    RepeatLayout="Table" 
    RepeatDirection="Horizontal" 
    RepeatColumns="7" 
    DataTextField="DayName" 
    DataValueField="DayNumber">
</asp:CheckBoxList>                  
Protected Sub Page_Load(sender As Object, e As EventArgs)
    If Not Page.IsPostBack Then
        CheckList1.DataSource = GetData()
        CheckList1.DataBind()
    End If
End Sub