.ASPX页面<table width="100%" border="0" align="center" cellpadding="0" cellspacing="0" bordercolor="#000000" bordercolordark="#fffce1">
<asp:Repeater ID="repQuestion" runat="server"
onitemdatabound="repQuestion_ItemDataBound">
<ItemTemplate>
<tr>
<td width="5%" align="left"> <%# Eval("Title")%></td>
</tr>
<tr>
<td width="5%" align="center"> <asp:Panel ID="myPanel" runat="server">
</asp:Panel></td>
</tr>
<tr>
<td>
<hr size="1" noshade style="border:1px dotted #FFFFFF"> </td>
</tr>
</ItemTemplate>
</asp:Repeater>
</table> .CS页面:
protected void Page_Load(object sender, EventArgs e)
{
if (IsOnline())
{
if (Request.QueryString["GroupID"] != null)
{
string sql = "Select QuestionID,Title,OptionType from Question Where GroupID=" + Request.QueryString["GroupID"].ToString();
SqlDataReader myRead = ut.GetSqlDataReader(sql);
repQuestion.DataSource = myRead;
repQuestion.DataBind();
myRead.Close();
//Response.Write(sql);
}
}
}
protected void repQuestion_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
Panel myPanel = (Panel)e.Item.FindControl("myPanel");
//myPanel.Controls.Add(lt);
}目的:
请问怎么在ItemDataBound里得到QuestionID和OptionType的值,从而根据这两个值来让myPanel加载不同类型的控件。
<asp:Repeater ID="repQuestion" runat="server"
onitemdatabound="repQuestion_ItemDataBound">
<ItemTemplate>
<tr>
<td width="5%" align="left"> <%# Eval("Title")%></td>
</tr>
<tr>
<td width="5%" align="center"> <asp:Panel ID="myPanel" runat="server">
</asp:Panel></td>
</tr>
<tr>
<td>
<hr size="1" noshade style="border:1px dotted #FFFFFF"> </td>
</tr>
</ItemTemplate>
</asp:Repeater>
</table> .CS页面:
protected void Page_Load(object sender, EventArgs e)
{
if (IsOnline())
{
if (Request.QueryString["GroupID"] != null)
{
string sql = "Select QuestionID,Title,OptionType from Question Where GroupID=" + Request.QueryString["GroupID"].ToString();
SqlDataReader myRead = ut.GetSqlDataReader(sql);
repQuestion.DataSource = myRead;
repQuestion.DataBind();
myRead.Close();
//Response.Write(sql);
}
}
}
protected void repQuestion_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
Panel myPanel = (Panel)e.Item.FindControl("myPanel");
//myPanel.Controls.Add(lt);
}目的:
请问怎么在ItemDataBound里得到QuestionID和OptionType的值,从而根据这两个值来让myPanel加载不同类型的控件。
<asp:Literal ID="literal2" runat="server" Text='<%#DataBinder.Eval(Container.DataItem,"OptionType")%>'asp:Literal>后台 if (e.Row.RowType == DataControlRowType.DataRow)
{
Literal literaId = e.Row.FindControl("literal1") as Literal;
Literal literaType = e.Row.FindControl("literal2") as Literal;
string questionId=literaId.Text;
string questoonType=literaType.Text;}
http://dotnet.aspx.cc/article/84ce8775-b0eb-41a5-b9d4-e5b8352203cd/read.aspx
if(e.Item.ItemType == ListItemType.AlternatingItem || e.Item.ItemType == ListItemType.Item)
{
Panel myPanel = (Panel)e.Item.FindControl("myPanel"); DataRowView drv = e.Item.DataItem as DataRowView;
int QuestionID = (int)drv["QuestionID"]; //myPanel.Controls.Add(lt);
}目的:
请问怎么在ItemDataBound里得到QuestionID和OptionType的值,从而根据这两个值来让myPanel加载不同类型的控件。