この全体の文は何を意味しているのでしょうか?おそらくcellという名前で使いまわせるようにしているのだと考えております。
また[0, e.RowIndex]は何を意味しているのでしょうか?
いろいろと検索をかけてみたのですが、これについて解説している記事を見つけることができませんでした。
調べが足りないと思われるかと存じますが、ご教授いただければ幸いです
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答2件
0
ベストアンサー
とりあえず基礎からやりましょう。特にC#の入門書(サイトでもいいが)にある内容と、.NET Framework(または .NET Core)の使い方とか。
すべて基礎から成り立っています。基礎をすっ飛ばして応用なんてできるはずありません。
足し算すらわからないのに、微積分をやろうとするようなものです。
DataGridViewCheckBoxCell cell = (DataGridViewCheckBoxCell)dataGridViewTo1[0, e.RowIndex];
まず、dataGridViewTo1とはなんでしょうか。コードすべて提示されていないので無○な私にはわかりませんが、恐らく DataGridViewクラスのオブジェクトだと思います。
では、DataGridView[...] とはなんでしょうか。
公式で調べると、DataGridViewのインデクサのようです。
公式には
[System.ComponentModel.Browsable(false)] public System.Windows.Forms.DataGridViewCell this[int columnIndex, int rowIndex] { get; set; }
とあります。
これは、columnIndex (名前からすると列番号) と rowIndex (名前からすると行番号) の場所にあるセル( System.Windows.Forms.DataGridViewCell のオブジェクト )を取得したり設定したりするものです。(インデクサの概要等はご自分で調べてください。『C# インデクサ』とかで検索すれば出てきます)
もし、var cell = dataGridViewTo1[0,1];
とあったら、0列の1行目のセルを取り出す。的な。
で、[0, e.RowIndex] とありますが、これは私にはわかりません。だって e の定義が無いから。
一応、調べ方は上記のdataGridViewTo1と一緒です。
そのとあるオブジェクト e が持つ RowIndexプロパティ? を行として取得する。
仮に e.RowIndex が 2だとしたら、dataGridViewTo1[0, 2]の意味になります。
そして、そこにあるセルを取得しようとしています。でも、欲しいのはDataGridViewCheckBoxCell、つまり「チェックボックスとしてのセル」のようです。取得できるのは DataGridViewCellですが。
で、この二つの関係性を調べます。そうすると公式では、「DataGridViewCheckBoxCellはDataGridViewCellを継承している」ようです。
なので、ダウンキャスト、つまり親と見なしていたものを子と見なす。
簡単にいえば『キャスト』します。
それが、(DataGridViewCheckBoxCell)dataGridViewTo1[...]
の部分。
そしてそれをDataGridViewCheckBoxCellのオブジェクト cell として保持する。
つまり、要約すると『DataGridViewの指定場所のセルを取得している』ってだけです。
これはC#の基礎が出来ていれば、簡単にわかることです。(完璧には分からなくても、後は調べるだけだから)
少なくとも
■ インデクサ ■ プロパティ ■ メソッド ■ クラス, オブジェクト ■ キャスト ■ 代入
の範囲は、C#の入門書(サイト)に載っていることです。
つまり、基礎をないがしろにしているから『わからない』。
仮に基礎をないがしろにする人でないなら、コードをすべて提示するはずです。
だって、「一部だけ出されてもわからない」のは当たり前だから。
羅生門を読んでいます。でも文中に「な」と出てきます。どういう意味でしょうか。 ネットで「羅生門 な」と検索してみましたが、出てきません。誰か教えてください。
みたいなものです。いや、文脈やどの単語のやつなのかによって変わるだろ……と言いたくなりますよね。
そういうレベルです。基礎をすっ飛ばしているからこんなことになるのです。
投稿2021/11/21 04:49
編集2021/11/21 09:33総合スコア4962
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/11/21 04:51
2021/11/21 09:43 編集
2021/11/21 09:01 編集
2021/11/21 09:01 編集
2021/11/21 09:17
2021/11/21 09:32
0
いろいろと検索をかけてみたのですが、これについて解説している記事を見つけることができませんでした。
そこは初心者には分かり難いかもしれませんね。「DataGridView.Item プロパティ」をキーワードにググってみてください。以下のような記事がヒットすると思います。
DataGridView.Item[] プロパティ
https://docs.microsoft.com/ja-jp/dotnet/api/system.windows.forms.datagridview.item?view=netframework-4.8
投稿2021/11/21 04:37
退会済みユーザー
総合スコア0
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/11/21 08:44
退会済みユーザー
2021/11/21 09:08
2021/11/22 01:39
2021/11/22 02:55 編集
退会済みユーザー
2021/11/22 02:11 編集
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。