读书人

怎么实现 gridview 某一个单元格中 动

发布时间: 2013-03-06 16:20:31 作者: rapoo

如何实现 gridview 某一个单元格中 动态添加 多个linkbutton????
我的的 gridview 的绑定 如下 代码


public void GV_SelectedBind()

{

GridView_SoftSelected.PageIndex = currentPageIndex;
DataSet ds1 = new FixDevSoftSelectedMgr().GetList("SchemaID=" + Convert.ToInt32(((Label)DataList_Schema.Items[0].FindControl("lbl_SchemaID")).Text));
string verid1 = "";
DataTable dt = new DataTable();
dt.Columns.Add(new DataColumn("DevStageID", typeof(string)));
dt.Columns.Add(new DataColumn("SchemaID", typeof(string)));
dt.Columns.Add(new DataColumn("VerID", typeof(string)));
DataRow dr ;
DataSet ds2 = CWorksNet.DBUtility.DbHelperSQL.Query("SELECT * from Soft_DataDict where SuperValueID=5");
for (int i = 0; i < ds2.Tables[0].Rows.Count; i++)
{
dr = dt.NewRow();
dr[0] = ds2.Tables[0].Rows[i]["Value"].ToString();
dr[1] = ((Label)DataList_Schema.Items[0].FindControl("lbl_SchemaID")).Text;

for (int j = 0; j < ds1.Tables[0].Rows.Count; j++)
{
if (ds1.Tables[0].Rows[j]["DevStageID"].ToString() == ds2.Tables[0].Rows[i]["DictID"].ToString())
{
// verid1 表示我最终 得到的要显示 在 gridview 某一单元格中的汉字 形如 小明,小红,小兰
verid1 = verid1 + CWorksNet.DBUtility.DbHelperSQL.GetSingle("select VerName from Soft_SoftVersion where VerID= "+ds1.Tables[0].Rows[j]["VerID"].ToString()) + ",";
}

}
if(verid1.Length !=0)
dr[2] = verid1.Substring(0,verid1.Length - 1);

dt.Rows.Add(dr);
verid1 = "";
}


GridView_SoftSelected.DataSource = dt;
GridView_SoftSelected.DataBind();



我的 前台 代码 如下

<Columns>
<asp:TemplateField HeaderText="选择">
<ItemTemplate>
<asp:CheckBox id="cbxId1" runat="Server" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="名字1">
<ItemTemplate>
<asp:Label ID="lbl_DevStageID" runat="server" Text='<%# Bind("DevStageID") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText ="名字2">
<ItemTemplate>
<asp:Label ID="lbl_schid" runat="server" Text='<%# Bind("SchemaID") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText ="名字3">


<ItemTemplate>

<asp:LinkButton ID="lbl_verid" runat="server" Text='<%# Eval("VerID") %>'></asp:LinkButton>



</ItemTemplate>
</asp:TemplateField>
</Columns>



我的问题是 如何 在 名字3 这一列 的一个单元格中 动态显示 小明,小红,小兰
分别 为3个 linkbutton。 因为 小明,小红,小兰 这几个值 是通过上述代码查找另外表得到的 不知道有多少个 无法 添加固定个数 的linkbutton。

我现在实行后的效果 就是 名字3 的 某单元格中 小明,小红,小兰 是一个linkbutton的text

[解决办法]
<Columns>
<asp:TemplateField HeaderText="选择">
<ItemTemplate>
<asp:CheckBox id="cbxId1" runat="Server" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="名字1">


<ItemTemplate>
<asp:Label ID="lbl_DevStageID" runat="server" Text='<%# Bind("DevStageID") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText ="名字2">
<ItemTemplate>
<asp:Label ID="lbl_schid" runat="server" Text='<%# Bind("SchemaID") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText ="名字3">
<ItemTemplate>

<asp:LinkButton ID="lbl_verid" runat="server" Text='<%# Eval("VerID")==1 ? "小明" : (Eval("VerID")==2 ? "小红" : "小兰") %>'></asp:LinkButton>



</ItemTemplate>


</asp:TemplateField>
</Columns>

[解决办法]
根据4楼的方法
在后台方法中返回若干个<a href="">小红</a><a href="">小明</a>
[解决办法]
linkbutton lb=new linkbutton();
lb.各种属性设置
Tables[0].Rows[i][0].cotrols.add();
没环境,你试试!

读书人网 >asp.net

热点推荐