在C#winform布局的时候,我们拖一个datagridview到窗体上面,将datagridview调整为适合窗体的大小,但是我们运行之后,点击最大化按钮的时候,却发现datagridview的大小没有随着窗体的大小而变化,影响窗体的整个布局效果,这时候可以设置一下datagridview的相应属性就可以实现,将Anchor的属性设置为TOP,BOTTOM,LEFT,RIGHT即可实现datagridview随窗体的大小而改变

而对于如何使整个表格填满控件问题(如下图)

可以采取以下两个办法:

(1)代码:假设在form上有一个datagirdview,然后form_load事件中有下列代码。

private void Form1_Load(object sender, EventArgs e)
{
DataTable dt = new DataTable();
dt.Columns.Add("name", typeof(string));
dt.Columns.Add("age", typeof(string));
dt.Columns.Add("sex", typeof(string));
dt.Columns.Add("birth", typeof(string));
//假设这里绑定了4列的datatable this.dataGridView1.DataSource = dt;//绑定
this.dataGridView1.RowHeadersVisible = false;//datagridview前面的空白部分去除
this.dataGridView1.ScrollBars = ScrollBars.None;//滚动条去除
this.dataGridView1.Width = this.dataGridView1.Columns[].HeaderCell.Size.Width * ;//根据column[0]的headercell的width计算整个datagridview的宽度
}
private void Form1_Load(object sender, EventArgs e)
{
DataTable dt = new DataTable();
dt.Columns.Add("name", typeof(string));
dt.Columns.Add("age", typeof(string));
dt.Columns.Add("sex", typeof(string));
//假设这里绑定了3列的datatable this.dataGridView1.DataSource = dt;
int width = this.dataGridView1.Width;
int avgWidth = width / dt.Columns.Count;//求出每一列的header宽度
for (int i = ; i < this.dataGridView1.Columns.Count; i++)
{
this.dataGridView1.Columns[i].Width = avgWidth;//设置每一列的宽度
}
}

(2)控件属性

属性AutoSizeColumnsMode设置为Fill

datagridview随窗体的大小而变,表格填满控件的更多相关文章

  1. Qt在表格中加入控件

    任务:使用QTableWidget动态生成表格,在每行的某两列中加入QComboBox下拉框控件和QPushButton按钮控件 有添加,删除,编辑功能,每行的按钮可以浏览文件夹并选择文件 1.新建一 ...

  2. Qt QTableView 表格内添加控件

    目录 Qt QTableView 表格内添加控件 1. QItemDelegate 2. setIndexWidget 3. setIndexWidget + setLayout Qt QTableV ...

  3. VS2010,MFC动态按钮和窗体背景图片,以及是静态文字控件透明,并避免静态文字刷新出现的重叠问题

    1.动态按钮的四种动作 1)正常 2)按下 3)滑过 4)失效 在MFC中,4个动作对应着四种位图bmp, 首先,将代表四种状态的位图加载入资源中,将对应的按钮设置为BitmapButton 第二,在 ...

  4. GridControl详解(九)表格中的控件

    选择完成控件后,可用+号点开ColumnEdit列,改控件的类型是RepositoryItem类型的,其相应的属性和相应的控件属性是类似的 构建数据如下: DataTable dt = new Dat ...

  5. 用table表格来调整控件的格式

    由于想自己写一个web,所以也在学习html语言的一些东西,让我回忆起了大学时代曾对网页设计产生过兴趣,无奈那时候还没有自己的电脑,还常去网吧买个软盘下载一些图片,然后用fontpage做一些网页.后 ...

  6. C#Winfrom中,窗体加载时会自动执行一次控件的textchange事件,怎么让它不执行?

    http://zhidao.baidu.com/link?url=iTSyfa5_RJBSb37S8efdWoL5eDMrnxeAm-prhGSNBXqdP9r7PzNDQTc7gVzJgCNdzli ...

  7. vb6加载时提示出错,窗体log文件中错误信息为:控件 XX 的类 MSComctlLib.ListView 不是一个已加载的控件类。

    解决办法:单击[工程] -- [部件] 添加此Microsoft Windows Common Controls-6.0 (SP6)部件,如果列表中没有,浏览到~\project\包\Support中 ...

  8. C#里WinForm开发中如何实现控件随窗体大小的改变而自动适应其改变(转)

    在设计可供用户调整大小的窗体时,如何实现该窗体上的控件也应能正确地随窗体的改变而自动调整大小并且能重新定位?此时就要借助控件的.Anchor属性.Anchor属性定义控件的定位点位置.当控件锚定到某个 ...

  9. C:\\MFC控件大小随窗体大小而改变

    一.大小和位置都改变 1.首先为窗体类添加CRect m_rect,该成员变量用来记录窗体的当前大小. 2.在类向导里面(Ctrl+W),为窗体添加消息WM_SIZE的响应函数OnSize(): 注意 ...

随机推荐

  1. DataSet, BindingSource, BindingNavigator Relationship

    Multiple Bindings caused dataBing weird???? Text.DataBindings.Add(new Binding("Text", bs1, ...

  2. delete all untracked files

    git clean -f git clean -fdx f   file d  directory x   .gitignore

  3. Nosql学习笔记

    1.利用Query查询,Query操作只搜索主键属性值,并支持对键属性值使用部分比较运算符,以优化搜索过程. * 查询结果始终按范围键排序.如果范围键的数据类型是数字,则会按数字顺序返回结果:否则,会 ...

  4. support HTML5 in IE8

    <!--this code is used to support HTML5 in IE8--> <!--[if IE]><script type="text/ ...

  5. 文件上传去除"Content-Disposition: form-data"

    某个项目中为了统一处理文件上传业务,创建了一个FileUpload Handle,由于上传客户端用到各种技术,当时为了方便断点续传,就直接接收请求中的文件内容(可能是分片),所以处理的不是规范的htt ...

  6. role roleMapping 权限说明

    根据我的理解,希望能帮助到大家 role表 是权限列表. roleMapping 关联权限(例如那个用户在那个权限里面,或者权限里面包含那个权限) roleMapping的数据不能单独添加.必须在ro ...

  7. 使用CMD命令设置IP

    使用CMD命令设置IP,将下面文本保存为bat文件后执行 netsh interface ip set address name="本地连接" source=static addr ...

  8. Unity3D 系统宏

    Platform Defines The platform defines that Unity supports for your scripts are:     Property: Functi ...

  9. [SLAM]Karto SLAM算法学习(草稿)

    Karto_slam算法是一个Graph based SLAM算法.包括前端和后端.关于代码要分成两块内容来看. 一类是OpenKarto项目,是最初的开源代码,包括算法的核心内容: https:// ...

  10. git如何使用 svn如何使用

    git和svn是2款常用的版本控制系统. git 的功能: 1.从服务器上克隆完整的Git仓库(包括代码和版本信息)到单机上. 也就是说自己机器上有一个git仓库. 这和svn是不同的,svn是没有本 ...