如何控制DataGrid里的内容换行与不换行?

    需求千奇百怪,有的要求表格里的内容自动换行,有的不要求,其实设置DataGrid的CSS样式单属性即可实现大部分的需求,但对于不换行的实现,单靠样式单还不能完全满足要求,下面就是一种解决的方法:

<%@ Page Language="C#" AutoEventWireup="True" %>
<%@ Import Namespace="System.Data" %>
<html>
<script runat="server">
int start_index;
ICollection CreateDataSource()
{
  DataTable dt = new DataTable();
  DataRow dr;

  dt.Columns.Add(new DataColumn("IntegerValue", typeof(Int32)));
  dt.Columns.Add(new DataColumn("StringValue", typeof(string)));
  dt.Columns.Add(new DataColumn("CurrencyValue", typeof(double)));

  for (int i = start_index; i < start_index + ItemsGrid.PageSize; i++)
  {
    dr = dt.NewRow(); 
    dr[0] = i;
    dr[1] = @"我是中文文字,I am English words,我不想换行,
            I don't wanna have new lines,欢迎访问
            <a href='http://dotnet.aspx.cc/'>http://dotnet.aspx.cc/</a>,
            有好料啊:)";
    dr[2] = 1.23 * (i+1);
 
    dt.Rows.Add(dr);
  }
 
  DataView dv = new DataView(dt);
  return dv;
}

void Page_Load(Object sender, EventArgs e)
{
  //对于没有数字的内容,下面这行完全满足要求,但加了数字就不行,必须调用OnItemDataBound
  ItemsGrid.Attributes.Add("style","word-break:keep-all;word-wrap:normal");
 
  //下面这行是自动换行
  //ItemsGrid.Attributes.Add("style","word-break:break-all;word-wrap:break-word");
 
  if (!IsPostBack)
  {
    BindGrid(); 
  }
}

void BindGrid()
{
  ItemsGrid.DataSource=CreateDataSource();
  ItemsGrid.DataBind();    
}

void Item_DataBound(Object sender, DataGridItemEventArgs e)
{
  if( e.Item.ItemType == ListItemType.Item ||
    e.Item.ItemType == ListItemType.AlternatingItem)
   e.Item.Cells[1].Text = "<nobr>" + e.Item.Cells[1].Text + "</nobr>";
}

</script>
<body>
<form runat="server">
<asp:DataGrid id="ItemsGrid" runat="server" BorderColor="black"
    OnItemDataBound="Item_DataBound" AutoGenerateColumns="false">

<AlternatingItemStyle BackColor="#DEDEDE"></AlternatingItemStyle>
<HeaderStyle BackColor="#EEEEFF" HorizontalAlign="Center"></HeaderStyle>

<Columns>
  <asp:BoundColumn HeaderText="序号" DataField="IntegerValue"/>
  <asp:BoundColumn HeaderText="文字" DataField="StringValue"/>
  <asp:BoundColumn HeaderText="价格" DataField="CurrencyValue" DataFormatString="{0:c}">
  <ItemStyle HorizontalAlign="right"></ItemStyle>
  </asp:BoundColumn>
</Columns>

</asp:DataGrid>
</form>
</body>
</html>

 

2025必备:C#上位机自动更新方案,支持断点续传与版本回滚(附完整源码) 摘要:工业上位机自动更新方案解析 本文针对工业现场上位机更新效率低下、风险高的问题,提出了一套完整的自动更新解决方案。该方案包含四个核心模块:版本检测(后台比对版本)、断点下载(支持网络中断续传)、安装更新(自动备份旧版本)和版本回滚(更新失败快速恢复)。通过独立更新工具与主程序解耦的设计,实现了"不影响生产+有退路"的工业级更新要求。方案基于.NET Framework开发,采用HTTP协议通信,包含详细的代码实现和工业场景适配说明,解决了U盘更新效率低、网络不稳定导致下载失败、更新后 阅读详情

相关推荐

告别Docker Desktop!Colima在Mac上的5分钟极速安装与配置指南(M1芯片实测)

本文详细介绍了如何在Mac(尤其是M1芯片)上快速安装和配置Colima,作为Docker Desktop的免费替代品。通过优化配置和实战指南,帮助开发者提升容器运行效率,减少资源占用,实现丝滑的开发体验。

weixin_28839601的博客 446

WPF中的DataGrid实现单元格内容自动换行

这里有两种实现方式:(推荐第二种) 一 、用ElementStyle <DataGrid GridLinesVisibility="None" AutoGenerateColumns="False" Loaded="DataGrid_Loaded" Height="300" Width="500"> <DataGrid.Columns> <DataGridTextColumn Width="4*" Header="U

程序员奶爸 8942

Anki小白必看:手把手教你打造高颜值个性化笔记模板(附Leaflyer模板下载)

本文为Anki新手提供详细的个性化笔记模板设计指南,从基础配置到高级定制技巧,帮助用户打造高效记忆系统。特别推荐Leaflyer模板下载,通过视觉优化和功能强化,显著提升学习体验和记忆效率。

weixin_28717969的博客 433

vb.net 实现编辑某列并回车后不换行,查询数据进行相关处理

此功能适合,在datagridview中编辑数据。在编辑了某列之后按回车,我们并不一定想换到另一行,而有可能是编辑下一个列,默认的换到下一行就比较讨厌了。现在来解决这个问题: Protected Overrides Function ProcessCmdKey(ByRef msg As Message, ByVal keyData As Keys) As Boolean If Me.DataGrid1.Enabled = True Then If keyData

superfans98的专栏 1047

Android开发中StateFlow与LiveData的5个关键区别及实战避坑指南

本文深度解析了Android开发中StateFlow与LiveData的5个核心区别,包括设计哲学、生命周期管理、值更新策略、线程模型及协程生态整合。通过实战代码对比,为开发者在现代MVVM架构下的状态管理选型提供清晰的决策指南和避坑建议,帮助构建更健壮、可测试的应用。

weixin_29012677的博客 406

Vivado静态时序分析学习笔记(1)

静态时序分析分为片内时序分析(寄存器与寄存器之间的时序关系)和片外时序分析(IO时序分析)。(1)建立时间 setup time在时钟事件(上升沿/下降沿)发生之前数据信号应保持稳定的时间。把实际电路抽象成前级D触发器+组合逻辑+后级D触发器。

Fantaasky的博客 4379

这题不会!面壁思过,换行吧!

今天是小浩算法“365刷题计划” 第107天。满血,复活!即日起,我们从这个题目开始,把 leetcode 前 200 道题,还没有讲过的,全部讲一遍。暂定的目标是一周 3-5 篇题解...

Google大神 448

eMMC数据擦除的方式

接下来主要是讲解erase、trim、discard的差异,涉及的command有CMD35、CMD36、CMD38。一般用来擦除整卡或者某些分区,如果只想擦除一个。以下是device status的部分解释。eMMC的数据擦除方式有6种,分别是。将会跳过写保护,只执行其他的范围。Discard的命令序列是。Erase的命令序列是。的范围有包含写保护,Trim的命令序列是。

DPJimmy的博客 1774

DataGrid控件中内容不换行的处理

DataGrid控件中内容不换行的处理// ...// 定义DataGridprotected DataGrid myDataGrid;// ...// ...// 响应DataGrid的ItemCreated事件myDataGrid.ItemCreated += new System.Web.UI.WebControls.DataGridItemEventHandle

Nickcheng.LOG 1812

科研绘图避坑指南:用PyMol制作期刊级蛋白-配体相互作用图(含氢键显示技巧)

本文是一份专业的科研绘图避坑指南,详细讲解如何利用PyMol软件制作符合期刊发表标准的蛋白-配体相互作用图。文章重点分享了从构图逻辑、精准选择到氢键等相互作用的艺术化表达技巧,并提供了视觉优化与期刊适配的终极参数设置,帮助科研人员产出兼具科学严谨性与视觉美感的专业图表。

weixin_29292431的博客 270

Faster Planner——Kinodynamic Astar详解

实际成本和启发式成本 实际成本 Actual Cost   每条轨迹的真实代价函数定义如下: J(T)=∫0T∥u(t)∥2dt+ρT \mathcal{J}(T)=\int_{0}^{T}\|\mathbf{u}(t)\|^{2} d t+\rho T J(T)=∫0T​∥u(t)∥2dt+ρT 离散形式下: 启发成本 Heuristic Cost pμ∗(t)=16αμt3+12βμt2+vμc+pμc=pμc+vμc+T2∗((2∗vμc−2∗vμg)/(2∗T)−(6∗pμc−6∗pμg+6∗T∗v

漫长IT路 4835

如何控制DataGrid里的内容换行与不换行

  需求千奇百怪,有的要求表格里的内容自动换行,有的不要求,其实设置DataGrid的CSS样式单属性即可实现大部分的需求,但对于不换行的实现,单靠样式单还不能完全满足要求,下面就是一种解决的方法:      C#" AutoEventWireup="True" %>            int start_index;   ICollection CreateDataSource()   {

The key to .Net 638

《AI编程实战:深度学习模型改进与系统部署》,改进专栏目录和介绍

专深度学习相关项目都写在本专栏,《一次订阅解锁全部,都有源码,永久观看》,包括车牌识别、股票预测、人脸识别、风格迁移、图像修复、图像超分辨重建、图像分割等任务,Web/PyQt系统实现。引入Transformer、Swin Transformer、DenseNet、ViT、ConvNeXt等算法实战,提供卷积改进,魔改对比实验,模型剪枝,模型蒸馏,模型量化,全网独家整合改进专栏,为不同领域的同学发表论文提供了大力支持。

在职AI算法工程师,擅长计算机视觉,YOLO目标检测、分割等,擅长web、pyqt界面可视化,好内容持续更新中,来这里跟大家一起学习,共同进步 3277

控制DataGrid里的内容换行与不换行

//换行DataGrid1.Attributes.Add("style","word-break:keep-all;word-wrap:normal");当内容为数字 ,则必须void DataGrid1_DataBound(Object sender, DataGridItemEventArgs e) { if( e.Item.ItemType == ListItemType.Item ||...

weixin_30826095的博客 156

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

上一篇: 在ASP.NET中显示进度条
下一篇: JavaScript实现的Base64编码和解码
java2000_test
博客等级 码龄19年 10粉丝 320原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值