こんにちは私はdatagridview
の中にSQL Serverデータベースのデータを含むボタンを生成するコードを用意しています。しかし今、私はそれらをボタンを通してスクロールしたい。私はたくさんのことを試してみましたが、私はエラーがすでにこれについての投稿を見たことがありますが、誰かが私のために働いてくれました。ボタンを使用したDataGridViewのスクロール
< -----------------------------------マイコード-------- ----------------------------->
メソッドのDataGridViewを埋めるために:私の
public void TabelaFuncionario()
{
try
{
BDfuncionarios = new DataTable();
string cmd = "My select string";
var adpt = fConexao.GetDataAdapter(cmd);
BDfuncionarios.Clear();
adpt.Fill(BDfuncionarios);
}
catch (Exception r)
{
MessageBox.Show(r.Message);
}
}
public void BotaoFuncionario()
{
try
{
TabelaFuncionario();
PosXartigo = 1;
PosYartigo = 1;
//Apagar o painel todo
dataGridView1.Controls.Clear();
foreach (DataRow row in BDfuncionarios.Rows)
{
int posicaoX = ((PosXartigo - 1) * Gap_Xartigo) + xInicial + (Largura_BotaoArtigo * (PosXartigo - 1));
if (posicaoX > maximoxArtigo)
{
PosYartigo++; PosXartigo = 1;
}
else
{
PosXartigo = PosXartigo != 1 ? PosXartigo++ : 1;
}
int PontoX = ((PosXartigo - 1) * Gap_Xartigo) + xInicial + (Largura_BotaoArtigo * (PosXartigo - 1));
int PontoY = ((PosYartigo - 1) * Gap_Yartigo) + yInicial + (Altura_BotaoArtigo * (PosYartigo - 1));
Button bt1 = new Button();
bt1.Location = new Point(PontoX, PontoY);
Mo mo = new Mo();
mo.codmo = (int)row["Something"];
mo.nome_func = (string)row["Something"];
bt1.Name = "Botao" + NBotoes.ToString();
bt1.Height = Altura_BotaoArtigo;
bt1.Width = Largura_BotaoArtigo;
bt1.BackColor = Color.Tan;
bt1.Font = new System.Drawing.Font("Tahoma", 9F, System.Drawing.FontStyle.Bold);
bt1.ForeColor = Color.Black;
bt1.Text = mo.nome_func;
bt1.Tag = mo;
bt1.FlatStyle = FlatStyle.Popup;
bt1.Click += btArtigo_click;
dataGridView1.Controls.Add(bt1);
NBotoes++;
PosXartigo++;
}
}
catch (Exception r)
{
MessageBox.Show(r.Message);
}
}
画像フォーム(それが助けかどうかを知りません):
< -------------------------- EDITED-- ------------------------ ------->
私はこのようなことを試してみました:https://msdn.microsoft.com/en-us/library/system.windows.forms.datagridview.rowcount(v=vs.110).aspx
はその
のような範囲か何かの私を与え、
int row = dataGridView1.RowCount;
MessageBox.Show(row+"");
今これを試してみましたそれは私に0を表示します。どのように私はグリッド内のボタンを持つことができますが、0行がありますか?
http://stackoverflow.com/questions/19648872/datagridview-how-to-jump-to-the-selected-row-in-search類似の質問 - 特定の行へのスクロールを含む – Squiggle
_allはエラー_を返します。どのようなエラーがあり、何を試しましたか? –
@NullException私は質問を編集しました –