none
DataGridViewの初期化について RRS feed

回答

  • > toolStripDRead_Click()2回目で、”住所”・”ID”・”ボタン”項目の後ろに、
    > ”Name”・”Age”項目が追加され、”大阪”・”京都”・”奈良”が”Name”列に、
    > ”11111”・”22222”・”33333”が”Age”列にセットされてしまいます。
    > ”ボタン”列は正しく3個追加されています。

    それより前は期待通りに動いていて、そこのところで期待通りにならないと言うことですか? では、期待した結果としてはどのようになればいいのでしょうか?

    (想像すれば分かるだろうとは言わないでくださいね。回答者が想像しないで済むように書いてください)


    #ご自分の環境(OS, .NET のバージョンなど)を書くようにしましょう。

    #適切なフォーラムを選んで質問しましょう。Visual C++ Express Edition のフォーラムは適切ではないですよね。

    • 回答としてマーク kizakura_ui 2014年8月11日 8:03
    2014年8月11日 7:29
  • AutoGenerateColumns プロパティがtrueだと表示したいデータ(クラスD)に含まれているけれど表示するように設定されていない項目の列が自動的に追加されます。
    1回目はNameとAgeを表示する列を定義しているので自動的に列は追加されません。しかし、2回目はNameとAgeを表示するための列が定義されていないために自動的に追加されてしまうということです。

    なおAutoGenerateColumnsはデザイナでは表示されないのでコードで設定してやる必要があります。

    class D
    {
        public D(string name, int age)
        {
            Name = name;
            Age = age;
        }
        public string Name { get; set; }
        public int Age { get; set; }
    }
    
    
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            this.dataGridView1.AutoGenerateColumns = false;//このプロパティをコードから設定してやる
        }
    
        //省略
    }


    個別に明示されていない限りgekkaがフォーラムに投稿したコードにはフォーラム使用条件に基づき「MICROSOFT LIMITED PUBLIC LICENSE」が適用されます。(かなり自由に使ってOK!)

    • 回答としてマーク kizakura_ui 2014年8月11日 8:06
    2014年8月11日 7:43

すべての返信

  • > toolStripDRead_Click()2回目で、”住所”・”ID”・”ボタン”項目の後ろに、
    > ”Name”・”Age”項目が追加され、”大阪”・”京都”・”奈良”が”Name”列に、
    > ”11111”・”22222”・”33333”が”Age”列にセットされてしまいます。
    > ”ボタン”列は正しく3個追加されています。

    それより前は期待通りに動いていて、そこのところで期待通りにならないと言うことですか? では、期待した結果としてはどのようになればいいのでしょうか?

    (想像すれば分かるだろうとは言わないでくださいね。回答者が想像しないで済むように書いてください)


    #ご自分の環境(OS, .NET のバージョンなど)を書くようにしましょう。

    #適切なフォーラムを選んで質問しましょう。Visual C++ Express Edition のフォーラムは適切ではないですよね。

    • 回答としてマーク kizakura_ui 2014年8月11日 8:03
    2014年8月11日 7:29
  • AutoGenerateColumns プロパティがtrueだと表示したいデータ(クラスD)に含まれているけれど表示するように設定されていない項目の列が自動的に追加されます。
    1回目はNameとAgeを表示する列を定義しているので自動的に列は追加されません。しかし、2回目はNameとAgeを表示するための列が定義されていないために自動的に追加されてしまうということです。

    なおAutoGenerateColumnsはデザイナでは表示されないのでコードで設定してやる必要があります。

    class D
    {
        public D(string name, int age)
        {
            Name = name;
            Age = age;
        }
        public string Name { get; set; }
        public int Age { get; set; }
    }
    
    
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            this.dataGridView1.AutoGenerateColumns = false;//このプロパティをコードから設定してやる
        }
    
        //省略
    }


    個別に明示されていない限りgekkaがフォーラムに投稿したコードにはフォーラム使用条件に基づき「MICROSOFT LIMITED PUBLIC LICENSE」が適用されます。(かなり自由に使ってOK!)

    • 回答としてマーク kizakura_ui 2014年8月11日 8:06
    2014年8月11日 7:43
  • 色々と不手際があり申し訳ありません。

    ご指摘いただいた点を修正して、C#フォーラムで再度質問させていただきます。

    ありがとうございました。

    2014年8月11日 8:09
  • どのような列構成にするかが不定のプログラムを作りたいと考えています。

    質問の書き方が不十分なことをお詫びいたします。

    ご指導、ありがとうございました。

    2014年8月11日 8:11
  • フォーラムの移動は、必要があれば管理者の方がやってくれますので、このスレッドで質問を続けてはいかがですか。

    むしろ、スレッドの乱立は歓迎されないことです。

    なお、このスレッドで質問を続ける際は「回答としてマーク」は外した方がいいです。回答済みになっていると、このスレッドを見る人が減って、回答が得にくくなりますので。

    2014年8月11日 13:25
  • もう一つお願いです。
    質問文を編集で消してしまうとほかの人が経緯を読み取れなくなり、スレッドの存在意義がなくなります。
    別の方も指摘されていますが、スレッドの移動自体は依頼すれば実施されますので、誤りを指摘されたからと言って焦らずにご対応いただければと思います。

    現状は回答しようと協力していただいた方々の情報が活かせなくなっています。その事実をご理解いただき、今後は気をつけてください。

    2014年8月11日 13:38
    モデレータ
  • ご指摘、いろいろもうしわけありませんでした。

    今後、このようなことがないように気を付けますので、どうかご指導よろしくお願いいたします。

    ありがとうございました。

    2014年8月20日 6:33