c# - 运行时可浏览(假)?

标签 c# datagridview

我正在使用数据源将数据填充到我的数据 GridView 中。但是,我正在尝试找到一种方法让用户能够隐藏他不想看到的列。

我可以在程序运行之前隐藏和显示列:

[Browsable(false)]
public string URL
{
    get
    {
        return this._URL;
    }
    set
    {
        this._URL = value;
        this.RaisePropertyChnaged("URL");
    }
}

我似乎无法弄清楚如何在运行时更改 [Browsable(false)]

有什么想法可以实现吗?

基本上,我想将“开/关”绑定(bind)到菜单。

如果我在解释我的问题时没有使用正确的术语,我深表歉意,我是自学的并在几周前开始 - 所以仍然是新手:)

编辑:

无法隐藏该列,因为当我运行我的更新功能时,所有列都会再次出现。这是我的更新功能:

    private void UpdateResults()
    {
        Invoke(new MethodInvoker(
                       delegate
                       {
                           this.dgvResults.SuspendLayout();
                           this.dgvResults.DataSource = null;
                           this.dgvResults.DataSource = this._mySource;
                           this.dgvResults.ResumeLayout();
                           this.dgvResults.Refresh();
                       }
                       ));
    }

最佳答案

在运行时,您可以只指定列为不可见:

dgv.Columns["ColumnName"].Visible = false;

关于c# - 运行时可浏览(假)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11971077/

相关文章:

c# - ASMX文件上传

c# - 如何在 DataGridView 中为列设置密码

c# - 如何使用属性网格在 DataGridView 中实现多行标题?

c# - 使用事件数组的委托(delegate)和事件的观察者模式

c# - 解析 XML 的高效方法

c# 自动将 am/pm 添加到我的(字符串)日期值

c# - 带有组合框列的 DatagridView 虚拟模型

c# - 将 DataGridView Column 更改为 DataGridViewComboBoxColumn 入站 DataGridView

c# - 如何在 C# 中打印 PCL 文件?

c# - 存储用于 SQL 和 C# 的常量