我无法设置绑定字段的宽度.以下标记中是否有任何问题.
<asp:BoundField DataField="UserName" HeaderText="User Name"
meta:resourcekey="BoundFieldUNCUserNameResource1">
<HeaderStyle Width="50%" />
</asp:BoundField>
Run Code Online (Sandbox Code Playgroud)
请参考图片.我使用以下设置宽度.黄色数字对应宽度.标记的用户名始终为Wrapped,即使我将宽度设置为较大的值(例如50%)并设置Wrap ="false".
<HeaderStyle Width="20%" Wrap="true" />
<ItemStyle Width="20%" Wrap="true" />
Run Code Online (Sandbox Code Playgroud) 在表格的td中的HTML中,您可以通过<BR>
在单词之间使用来中断文本.这也适用于TemplateItem的HeaderText,但不适用于BoundField的HeaderText.如何拆分BoundField的Header文本.
我在aspx页面中有一个gridview,我需要它在用户点击Component1值后从BoundField添加到Component的超链接.如何将超链接添加到与BoundField相关的boundfield?
<asp:GridView ID="Module" runat="server" AutoGenerateColumns="False" BackColor="White"
BorderColor="#DEDFDE" BorderStyle="None" BorderWidth="1px" CellPadding="4"
DataSourceID="dsrcGetModuleData" Font-Size="0.65em" ForeColor="Black" GridLines="Vertical" DataKeyNames="TestID">
<FooterStyle BackColor="#CCCC99" />
<Columns>
<asp:BoundField DataField="Component1" ItemStyle-Font-Size="Small" HeaderStyle-Width="80px" HeaderStyle-Font-Size ="Medium" SortExpression="Component1" />
</Columns>
<RowStyle BackColor="#F7F7DE" />
<SelectedRowStyle BackColor="#CE5D5A" Font-Bold="True" ForeColor="White" />
<PagerStyle BackColor="#F7F7DE" ForeColor="Black" HorizontalAlign="Right" />
<HeaderStyle BackColor="#6B696B" Font-Bold="True" ForeColor="White" />
<AlternatingRowStyle BackColor="White" />
</asp:GridView>
Run Code Online (Sandbox Code Playgroud) 我知道其他人已经提出了我要问的问题,但这些答案对我的问题没有解决方案.
我有一个gridview包含2个BoundFields,2个ButtonFields和一个复选框字段(这是一个TemplateField).
我还有一个数据表,填充了数据库中的数据.
在aspx代码中,我创建了gridview,其中字段设置了最后一个BoundField Visible = false
.
在我的代码隐藏中,我添加了colums并将数据源绑定到我的数据表.
但是当我尝试从隐藏的边界字段读取数据时,该字段为空.我不能使用类似问题提到的解决方案的问题是因为人们假设数据被逐个填充,而不是通过将数据表绑定到gridview的数据源.
所以我的问题是:他们是一种从隐藏的边界域获取数据的方法,还可以通过将数据表绑定到gridview的数据源来保留添加数据的可能性吗?如果是这样,从该领域获得价值是否可行?
ps我在visual studio 2010中使用asp.net/c#
ASPX:
<asp:GridView ID="gvSelect" runat="server" AutoGenerateColumns="False" BorderStyle="None" onrowcommand="gvTestSelect_RowCommand">
<Columns>
<asp:TemplateField>
<HeaderTemplate>
<asp:CheckBox runat="server" ID="cbHeader" OnPreRender="cbHeader_PreRender" />
</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox runat="server" ID="cbItems" />
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="field" HeaderText="Veld" SortExpression="field" />
<asp:ButtonField DataTextField="up" HeaderText="Omhoog" SortExpression="up" CommandName="up" Text="↑" />
<asp:ButtonField DataTextField="down" HeaderText="Omlaag" SortExpression="down" CommandName="down" Text="↓" />
<asp:BoundField DataField="hidden" SortExpression="hidden" />
</Columns>
</asp:GridView>
Run Code Online (Sandbox Code Playgroud)
Code Behind(填写gridview的地方):
//create array list and fill it with all columns
Dictionary<string, string> dict = FillLists.getColumnsByTable(loader, ddlInfoTableI.SelectedItem.Value.ToString());
//loop …
Run Code Online (Sandbox Code Playgroud) 我如何为BoundField提供样式?
我在Gridview中使用BoundField.Tt显示下划线和不需要的颜色.
如何删除下划线和颜色?
我有一张桌子,桌子上有几个按钮和一个Gridview.我试图将文本包装在其中一个boundfield
Gridview中.我尝试RowStyle
Wrap="true"
在Gridview属性中设置ItemStyle
Wrap="true"
并Width
在boundfield属性中设置和.但没有奏效.有人可以帮帮我吗?
以下是我的aspx
.
<table align="center" border="0" cellpadding="0" cellspacing="2" >
<tr>
<td></td>
<td align="right">
<asp:Button ID="btnAdd" runat="server" Text="Add Subscription"
onclick="btnAdd_Click" CausesValidation="False" />
</td>
</tr>
<tr>
<td colspan="2">
<p align="center" style="font-family: Arial, Helvetica, sans-serif; font-size: 14px" >
<asp:Label ID="Label1" runat="server" Text=""></asp:Label>
</p>
</td>
</tr>
<tr>
<td align="left" colspan="2">
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
DataKeyNames="SubscriptionID,UserID"
DataSourceID="SqlDSEmailSubscriptions" Width="90%" CellPadding="4"
EnableViewState="False" AllowPaging="True">
<Columns>
<asp:TemplateField HeaderText="SubscriptionName" SortExpression="SubscriptionName">
<ItemTemplate>
<asp:LinkButton ID="lbtnSubscription" runat="server" CausesValidation="false"
Text='<%# Eval("SubscriptionName")%>' OnClick="lbtnSubscription_Click">
</asp:LinkButton> …
Run Code Online (Sandbox Code Playgroud) 我有这样BoundField
一个GridView
<asp:BoundField DataField="ReportId" HeaderText="RId" Visible="false" />
Run Code Online (Sandbox Code Playgroud)
但是当我尝试在该字段中获取文本时,它返回空.
protected void gvwReports_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "ViewSchedule")
{
int index = Convert.ToInt32(e.CommandArgument);
GridViewRow row = gvwReports.Rows[index];
string s = row.Cells[0].Text;
}
}
Run Code Online (Sandbox Code Playgroud)
但是,如果我将BoundField's
.Visible
属性更改为,则返回正确的值true
我把数据放在数据表中,例如
dt.TableName = "SA1";
da.Fill(dt);
GridView1.DataSource = dt;
GridView1.DataBind();
Run Code Online (Sandbox Code Playgroud)
现在我不确定我是否应该使用boundfield(对于所有列)
<asp:BoundField DataField="Unit" HeaderText="Unit" SortExpression="Unit" />
Run Code Online (Sandbox Code Playgroud)
或使用
<asp:TemplateField>
<HeaderTemplate>
Units
</HeaderTemplate>
<ItemTemplate>
<asp:TextBox runat="server" ID="txbUnits" Text='<%# Eval("Unit")%>'></asp:TextBox>
</ItemTemplate>
</asp:TemplateField>
Run Code Online (Sandbox Code Playgroud)
并且随着我的进展添加数据,gridview的目的只是为了显示数据
我正在研究一个遗留的Windows窗体项目,我正在迁移到webforms.
有一个数据集,我绑定到gridview.
我已经创建了所有的boundfields,因此gridview不会自动生成列.每当我将此数据集绑定到网格时,数据集中缺少某些列,因此它会抛出有关不存在列的错误.
有没有办法忽略绑定字段中的缺失列?比如,如果它不存在,删除绑定列...或者只是忽略它?
我正在使用一个旧应用程序,该应用程序具有针对不同位置的硬编码列,现在正在添加新位置我决定尝试动态填充内容.应用程序的一个功能是在状态被视为"糟糕"时显示红色文本和粗体文本.这是通过使用TemplateFields在所选行中的单元格中使用"FindControl()"函数来执行的.
既然我已将其设置为使用绑定字段,那么在DataBound事件期间如何更改文本颜色,大小等?
BoundField statusField = new BoundField();
statusField.DataField = "ExceptionStatusCode";
statusField.HeaderText = "Status";
statusField.SortExpression = "ExceptionStatusCode";
this.gvView.Columns.Add(statusField);
Run Code Online (Sandbox Code Playgroud)
protected void gvView_DataBound(object sender, EventArgs e)
{
foreach (GridViewRow row in this.gvView.Rows)
{
//NO LONGER WORKS, NEED TO KNOW HOW TO REPRODUCE
//WHAT IS BELOW FOR BOUND FIELD
Label lblPartStatus = ((Label) row.Cells[StatusColumn].FindControl("lblPartStatus"));
if (lblPartStatus.Text == "BAD")
{
lblPartStatus.ForeColor = System.Drawing.Color.Red;
row.ToolTip = "One or more locations is missing information!";
row.BackColor = System.Drawing.Color.Salmon;
}
}
}
Run Code Online (Sandbox Code Playgroud) boundfield ×10
gridview ×10
asp.net ×7
c# ×7
css ×1
datagrid ×1
headertext ×1
hidden ×1
hyperlink ×1
rowcommand ×1
text ×1
webforms ×1
word-wrap ×1