我是 asp.net 的新手,我有一个特殊问题,
我必须从一些数据库值加载一个gridview ...
我的gridview中有2列,一列是标签,一列是文本框..
对于标签中的特殊值,文本框应该是多行的..对于其他情况,文本模式应该是单行...
有人可以帮我解决这个问题吗?
PS:如果我的问题不清楚,请告诉我,我可以解释
我是 asp.net 的新手,我有一个特殊问题,
我必须从一些数据库值加载一个gridview ...
我的gridview中有2列,一列是标签,一列是文本框..
对于标签中的特殊值,文本框应该是多行的..对于其他情况,文本模式应该是单行...
有人可以帮我解决这个问题吗?
PS:如果我的问题不清楚,请告诉我,我可以解释
然后找到值,如果匹配,您可以更改属性TextMode
protected void GVRowDataBound(object sender, GridViewRowEventArgs e)
{
var txb= (TextBox) e.Row.FindControl("TextBoxID");
}
您说的是新的,所以如果您不知道如何将绑定字段转换为模板字段,请按照以下教程进行操作:
一旦你转换为模板文件,然后在 RowDataBound 上这样做:
void GridView1_RowDataBound(Object sender, GridViewRowEventArgs e)
{
foreach (GridViewRow gRow in GridView1.Rows)
{
TextBox myfieldtxt = gRow.FindControl("yourTxtBxID") as TextBox;
Label myLable = gRow.FindControl("yourLableID") as Label;
if(myLable.Text.Equals("XYZ"))
{
myfieldtxt.TextMode = TextBoxMode.MultiLine;
}
else
{
myfieldtxt.TextMode = TextBoxMode.Single;
}
}
}
你可以这样试试:
<asp:TemplateField>
<ItemTemplate>
<asp:TextBox ID="TextBox1" runat="server" ReadOnly="True" Text='Sometext'
TextMode="MultiLine"></asp:TextBox>
</ItemTemplate>
</asp:TemplateField>