DataGridView 宽度怎么能随列数及列内容自动变化

jhone99 2017-05-01 01:38:30
如题

DataGridView 宽度怎么能随列数及列内容自动变化,有这种属性设置或事件触发么?

就是说我列内容多了,列宽自动宽了,怎么能让DataGridView控件本身宽度也跟着变。
...全文
768 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
wang_peng_yl 2017-05-25
  • 打赏
  • 举报
回复
引用 17 楼 wawd74520 的回复:
[quote=引用 9 楼 xuzuning 的回复:] 你找个事件(比如 DataSourceChanged),在里面计算一下就是了 人家通用的控件,不可能为每个个体的需求预留控制属性
引用 15 楼 wang_peng_yl 的回复:
放弃吧,决定没有,除非你自己用代码写
是不是16楼的效果。[/quote] 是的
失落的神庙 2017-05-24
  • 打赏
  • 举报
回复
引用 9 楼 xuzuning 的回复:
你找个事件(比如 DataSourceChanged),在里面计算一下就是了 人家通用的控件,不可能为每个个体的需求预留控制属性
引用 15 楼 wang_peng_yl 的回复:
放弃吧,决定没有,除非你自己用代码写
是不是16楼的效果。
失落的神庙 2017-05-24
  • 打赏
  • 举报
回复






public Form1()
{
InitializeComponent();

dataGridView1.AutoSize = true;
dataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells;




}

int tempi = 0;
private void button1_Click(object sender, EventArgs e)
{
dataGridView1.Columns.Add("dsadsa"+ tempi, "dsadsa");
tempi++;
}

private void button2_Click(object sender, EventArgs e)
{
dataGridView1.Rows.Add("ddddddddddddssssssssssssssssssssssssssssdsadsadsassssssssssssssssssssssssssssssss");
}
wang_peng_yl 2017-05-24
  • 打赏
  • 举报
回复
放弃吧,决定没有,除非你自己用代码写
qq_38911319 2017-05-24
  • 打赏
  • 举报
回复 1
dataGridView1.AutoSize = true;




特意注册个号来回复。不好意思。 题目看错。希望这次没看错
失落的神庙 2017-05-24
  • 打赏
  • 举报
回复
试试这个属性。是自动的。不需要触发。
失落的神庙 2017-05-24
  • 打赏
  • 举报
回复
AutoSizeColumnMode
失落的神庙 2017-05-24
  • 打赏
  • 举报
回复
引用 10 楼 jhone99 的回复:
确实没有这种属性么?
有。等会找给你。我在装vs
jhone99 2017-05-24
  • 打赏
  • 举报
回复
确实没有这种属性么?
jhone99 2017-05-03
  • 打赏
  • 举报
回复
引用 6 楼 JustWantToFly 的回复:
[quote=引用 5 楼 jhone99 的回复:] [quote=引用 4 楼 JustWantToFly 的回复:] 控件一般都是设置dock属性为fill,然后设置滚动条,你列数多了或者内容撑过窗体宽度就直接滚动显示
我这用法不一样,我这不用固定宽度,要根据表格里内容长短、列数多少来动态改变DataGridView控件宽度。 你说的用法对我没有意义。[/quote]

 dataGridView1.DataSource = DT;
            int width = 0;
            for (int i = 0; i < dataGridView1.Columns.Count; i++)
            {
                width = width + dataGridView1.Columns[i].Width;
            }
            if (width != 0)
            {
                this.Width = width + 10;
                dataGridView1.Width = width;
            }
给你个例子,你试试[/quote] 这个我会写,我是想提高效率,找属性或设置什么的方法
xuzuning 2017-05-03
  • 打赏
  • 举报
回复
你找个事件(比如 DataSourceChanged),在里面计算一下就是了 人家通用的控件,不可能为每个个体的需求预留控制属性
JustWantToFly 2017-05-03
  • 打赏
  • 举报
回复
引用 7 楼 jhone99 的回复:
[quote=引用 6 楼 JustWantToFly 的回复:] [quote=引用 5 楼 jhone99 的回复:] [quote=引用 4 楼 JustWantToFly 的回复:] 控件一般都是设置dock属性为fill,然后设置滚动条,你列数多了或者内容撑过窗体宽度就直接滚动显示
我这用法不一样,我这不用固定宽度,要根据表格里内容长短、列数多少来动态改变DataGridView控件宽度。 你说的用法对我没有意义。[/quote]

 dataGridView1.DataSource = DT;
            int width = 0;
            for (int i = 0; i < dataGridView1.Columns.Count; i++)
            {
                width = width + dataGridView1.Columns[i].Width;
            }
            if (width != 0)
            {
                this.Width = width + 10;
                dataGridView1.Width = width;
            }
给你个例子,你试试[/quote] 这个我会写,我是想提高效率,找属性或设置什么的方法[/quote] 这个是没有属性的,只能动态设置
JustWantToFly 2017-05-01
  • 打赏
  • 举报
回复
引用 5 楼 jhone99 的回复:
[quote=引用 4 楼 JustWantToFly 的回复:] 控件一般都是设置dock属性为fill,然后设置滚动条,你列数多了或者内容撑过窗体宽度就直接滚动显示
我这用法不一样,我这不用固定宽度,要根据表格里内容长短、列数多少来动态改变DataGridView控件宽度。 你说的用法对我没有意义。[/quote]

 dataGridView1.DataSource = DT;
            int width = 0;
            for (int i = 0; i < dataGridView1.Columns.Count; i++)
            {
                width = width + dataGridView1.Columns[i].Width;
            }
            if (width != 0)
            {
                this.Width = width + 10;
                dataGridView1.Width = width;
            }
给你个例子,你试试
jhone99 2017-05-01
  • 打赏
  • 举报
回复
引用 4 楼 JustWantToFly 的回复:
控件一般都是设置dock属性为fill,然后设置滚动条,你列数多了或者内容撑过窗体宽度就直接滚动显示
我这用法不一样,我这不用固定宽度,要根据表格里内容长短、列数多少来动态改变DataGridView控件宽度。 你说的用法对我没有意义。
JustWantToFly 2017-05-01
  • 打赏
  • 举报
回复
引用 2 楼 jhone99 的回复:
[quote=引用 1 楼 JustWantToFly 的回复:] 应该有自适应的属性
列宽根据内容多少自适应找到了,但是控件宽度自适应没找到。[/quote] 控件一般都是设置dock属性为fill,然后设置滚动条,你列数多了或者内容撑过窗体宽度就直接滚动显示
JustWantToFly 2017-05-01
  • 打赏
  • 举报
回复
控件一般都是设置dock属性为fill,然后设置滚动条,你列数多了或者内容撑过窗体宽度就直接滚动显示
jhone99 2017-05-01
  • 打赏
  • 举报
回复
引用 1 楼 JustWantToFly 的回复:
应该有自适应的属性
列宽根据内容多少自适应找到了,但是控件宽度自适应没找到。
JustWantToFly 2017-05-01
  • 打赏
  • 举报
回复
应该有自适应的属性

110,571

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧