首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >无法隐式地将类型system.windows.forms.datagridtextboxcolumn转换为system.windows.forms.datagridviewcolumn M‘警报器

无法隐式地将类型system.windows.forms.datagridtextboxcolumn转换为system.windows.forms.datagridviewcolumn M‘警报器
EN

Stack Overflow用户
提问于 2019-02-27 14:52:52
回答 1查看 956关注 0票数 1

在创建带有2列的动态datagridview时,我确实陷入了困境,我使用了datgridtextboxcolumns列,但是我一直收到这个错误

无法将“system.windows.forms.datagridtextboxcolumn”和"dgviewcol2“隐式转换为"dgviewcol1”和“dgviewcol2”

当我尝试用AddRange添加新列时。我还出现了一个错误,即在datagridviewtextboxcolumn列中不存在可视属性,这是false。

有人知道我怎样才能摆脱这些错误吗?非常感谢!

代码语言:javascript
运行
复制
private DataGridView dgview;
    private DataGridTextBoxColumn dgviewcol1;
    private DataGridTextBoxColumn dgviewcol2;
    void Search()
    {
        dgview = new DataGridView();
        dgviewcol1 = new DataGridTextBoxColumn();
        dgviewcol2 = new DataGridTextBoxColumn();
        this.dgview.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
        this.dgview.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {this.dgviewcol1, this.dgviewcol2}); // "cannot implicitly convert type system.windows.forms.datagridtextboxcolumn to system.windows.forms.datagridviewcolumn"
        dataGridView2.Visible = false;
        this.dgviewcol1.Visible = false; // Visible property doesn't exist in datagridviewtextboxcolumn
        this.dgviewcol2.Visible = false;
        this.Controls.Add(dgview);
        this.dgview.ReadOnly = true;
        dgview.BringToFront();

    }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-02-27 18:25:22

您正在尝试将DataGridTextBoxColumn添加到DataGridView中,而不是添加DataGridViewTextBoxColumn,因此编译器试图将其转换为抛出异常的DataGridViewColumn。

代码语言:javascript
运行
复制
private DataGridView dgview;
private DataGridViewTextBoxColumn dgviewcol1;
private DataGridViewTextBoxColumn dgviewcol2;
void Search()
{
    dgview = new DataGridView();
    dgviewcol1 = new DataGridViewTextBoxColumn();
    dgviewcol2 = new DataGridViewTextBoxColumn();
    this.dgview.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
    this.dgview.Columns.AddRange(new System.Windows.Forms.DataGridViewTextBoxColumn[] {this.dgviewcol1, this.dgviewcol2}); // "cannot implicitly convert type system.windows.forms.datagridtextboxcolumn to system.windows.forms.datagridviewcolumn"
    dataGridView2.Visible = false;
    this.dgviewcol1.Visible = false; // Visible property doesn't exist in datagridviewtextboxcolumn
    this.dgviewcol2.Visible = false;
    this.Controls.Add(dgview);
    this.dgview.ReadOnly = true;
    dgview.BringToFront();

}

希望这能解决你的问题

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54908189

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档