maxColumns
の値を他のアイテムが繰り返し使用するメソッドに渡す必要があります。このシナリオでは、どうすればmaxColumns
を渡すことができますか?イベントと一緒に変数を渡すのが難しい
public partial class ValResults : Form
{
public ValResults()
{
InitializeComponent();
this.Table1Requirements();
}
private void Table1Requirements()
{
int maxColumns = 6;
this.table1LayoutPanelPrime.CellPaint += new TableLayoutCellPaintEventHandler(tableLayoutPaint);
}
void tableLayoutPaint(object sender, TableLayoutCellPaintEventArgs e)
{
for (int i = 0; i < maxColumns; i++)
{
if (e.Row == 0 && e.Column == i)
{
Graphics g = e.Graphics;
Rectangle r = e.CellBounds;
g.FillRectangle(Brushes.LightGray, r);
}
}
}
}
異なる最大列設定で扱うパスが何にありますか?私はあなたがC#の可変スコープとメソッドと引数を読むことをお勧めします。あなたの投稿コードでは、 'maxColumns'が0(デフォルト値)になるため、ループは実行されません。 – Tim
合計で5つのテーブルがあり、すべて同じヘッダーが強調表示されている必要があります。貼り付けコードをコピーするのではなく、私は同じループを使うことを望んでいました。今私は7にハードコードされたループを持っていますが、これは次のセクションでは動作しません。 アレックス、そうですね、私がやろうとしていることです。私はそれを行うことができない場合、私はそれが可能かどうかを確認するために手を差し伸べることはできません。 – Rygar
ループは必要ありません。ちょうど 'if(e.Row == 0 && e.Column
Slai