visual-studio-2005 - 在 Visual Studio 中保存数据 GridView 的布局(宽度、顺序)

标签 visual-studio-2005 datagridview layout

我有一些数据网格 View ,我希望用户能够保留他对它们所做的更改。不是数据变化,只有布局变化,比如宽度、高度、列的顺序以及它们的可见性。我不在乎它是自动的还是通过单击按钮...

编辑:我找到了一种使用 Settings.I 执行此操作的方法。我添加了设置文件,但我不知道应该如何在这些设置中添加列顺序或列大小

最佳答案

您可以在 DataGridGiew 的各种属性中找到要保存的格式信息类型。您可能需要在它的 object model documentation 上度过一段美好的时光,但您应该能够找到您要查找的大部分内容。

例如,要保存行的排序方式,您可以保留这两个属性:

DataGridView.SortedColumn告诉您对行进行排序的列的值。
DataGridView.SortOrder告诉您顺序(即升序或降序)

您应该能够在 DataGridView.Columns 的成员上找到有关列宽和顺序的信息。收藏。

我认为是一次性记录这些值(例如单击“保存设置”按钮)还是在属性更改时在事件处理程序中一个一个记录,这是一个偏好问题。我喜欢在用户没有任何操作的情况下关闭表单时自动保存它们。我已经有一段时间没有实现这样的东西了,但我记得应用程序设置是保存此类信息的一个非常方便的地方。在项目属性设置设计器中,只需为要保留的内容定义设置(确保将范围设置为“用户”)。然后在运行时在代码中分配和加载实际值,如下所示:

// e.g. you defined an integer user setting at design time called ColA_Width, to
// hold the value of the width of "ColA" in your DataGridView.

// Use this code to save the value (either in a specific event handler, or a 
// global "save settings" routine).
Properties.Settings.Default.ColA_Width = MyDataGridViewInstance.Columns["ColA"].Width;
Properties.SEttings.Default.Save();

// Then you'd reverse the assignments when the app next loads so that the saved 
// settings are "remembered" between user sessions.
MyDataGridViewInstance.Columns["ColA"].Width = Properties.Settings.Default.ColA_Width;

我能记得的唯一警告是,某些 DataGridView 属性值不能直接保存为字符串(请记住,您的用户设置最终会保存为 XML),但这实际上取决于您保存的设置类型。

关于visual-studio-2005 - 在 Visual Studio 中保存数据 GridView 的布局(宽度、顺序),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1279508/

相关文章:

c++ - 调试链接到发布可执行文件的调试 dll

visual-studio - 在现有目录中创建项目/解决方案?

DataGridView/Enter 键?

java - 设备旋转后布局重新启动

android - 使工具栏适合整个屏幕顶部

ms-access - 如何获取表架构

c# - 有关 BindingSource 中 Find() 的帮助

c# - 在 C# 中从本地数据库中的单个列中检索数据

android - ViewFlipper 宽度正在包裹其内容并且 fill_parent 不起作用

c++ - 程序部署失败