C# 使用网格视图
我有一个从LinqDataSource填充的asp:GridView。我的问题是C# 使用网格视图,c#,asp.net,linq-to-sql,gridview,C#,Asp.net,Linq To Sql,Gridview,我有一个从LinqDataSource填充的asp:GridView。我的问题是 正文包含1000个字符,我只能在正文字段中显示50个字符(溢出隐藏) 字段日期内容2011年1月1日我想在字段日期中显示2011年7月1日 字段senderequal id(示例23)我想要显示名称(23=alen) 我将如何实现这些目标 编辑 回答@naveen是正确的 我希望当用户单击行show body full???首先,如果要显示发件人的名称而不是ID,则必须修改查询以加入包含该名称的表 对于日期问题,您
日期
内容2011年1月1日
我想在字段日期
中显示2011年7月1日
sender
equal id(示例23)我想要显示名称(23=alen)我希望当用户单击行show body full???首先,如果要显示发件人的名称而不是ID,则必须修改查询以加入包含该名称的表 对于日期问题,您可以使用格式(日期,“dd/mm/yyyy”)
在绑定到网格之前,您能确保您的查询实际返回所有字符吗?首先,如果您想显示发件人的名称而不是ID,您必须修改查询以加入包含该名称的表中 对于日期问题,您可以使用格式(日期,“dd/mm/yyyy”) 在绑定到网格之前,您能确保查询实际返回所有字符吗?试试这个 加价
<asp:GridView ID="gridInboxMessage" runat="server"
AutoGenerateColumns="False"
DataSourceID="LinqDataSource1">
<Columns>
<asp:BoundField DataField="Title" HeaderText="title" ReadOnly="True" SortExpression="Title" />
<asp:BoundField DataField="Body" HeaderText="body" ReadOnly="True" SortExpression="Body" />
<asp:BoundField DataField="Sender" HeaderText="sender" ReadOnly="True" SortExpression="Sender" />
<asp:BoundField DataField="Date1" HeaderText="date" ReadOnly="True" SortExpression="Date1" />
</Columns>
</asp:GridView>
<asp:LinqDataSource ID="LinqDataSource1" runat="server"
ContextTypeName="DataClassesDataContext"
Select="new (Title, Body, Sender, Date1)"
TableName="PrivateMessages"
Where="Receptor == @Receptor">
<WhereParameters>
<asp:QueryStringParameter Name="Receptor" QueryStringField="idCompany" Type="String" />
</WhereParameters>
</asp:LinqDataSource>
希望这有帮助。试试这个
加价
<asp:GridView ID="gridInboxMessage" runat="server"
AutoGenerateColumns="False"
DataSourceID="LinqDataSource1">
<Columns>
<asp:BoundField DataField="Title" HeaderText="title" ReadOnly="True" SortExpression="Title" />
<asp:BoundField DataField="Body" HeaderText="body" ReadOnly="True" SortExpression="Body" />
<asp:BoundField DataField="Sender" HeaderText="sender" ReadOnly="True" SortExpression="Sender" />
<asp:BoundField DataField="Date1" HeaderText="date" ReadOnly="True" SortExpression="Date1" />
</Columns>
</asp:GridView>
<asp:LinqDataSource ID="LinqDataSource1" runat="server"
ContextTypeName="DataClassesDataContext"
Select="new (Title, Body, Sender, Date1)"
TableName="PrivateMessages"
Where="Receptor == @Receptor">
<WhereParameters>
<asp:QueryStringParameter Name="Receptor" QueryStringField="idCompany" Type="String" />
</WhereParameters>
</asp:LinqDataSource>
希望这有帮助。嘿,我不是在做你的工作。我已经告诉你该怎么做了。行得通。嘿,我不做你的工作。我已经告诉你该怎么做了。这是可行的。我想第三个问题是,他想显示发件人的姓名,而不是他们的ID。为此,他需要修改他的select查询,正如马丁所说的那样。@Tim:谢谢你。我想现在一切都好了。@GodIsLive:发生了什么事?为什么要取消标记?代码有问题吗?很抱歉你不得不在另一个帖子上问这个问题。工作太多:)我想第三个问题他想显示发件人的姓名,而不是他们的ID。为此,他需要修改他的select查询,正如马丁所说的那样。@Tim:谢谢你。我想现在一切都好了。@GodIsLive:发生了什么事?为什么要取消标记?代码有问题吗?很抱歉你不得不在另一个帖子上问这个问题。工作太多了:)
protected string TruncateText(object objBody)
{
string truncated = "";
if (objBody != null)
{
truncated = objBody.ToString().Length > 50 ?
objBody.ToString().Substring(0, 47) + "..." : objBody.ToString();
}
return truncated;
}
protected string GetSenderNameFromID(object objSenderID)
{
string senderName = "";
if (objSenderID != null)
{
senderName = CallDatabaseToGetNameFromID();
}
return senderName;
}
private string CallDatabaseToGetNameFromID()
{
//implement your database call to retrieve sender name from id
throw new NotImplementedException();
}