none
改變datagridview按鈕位置 RRS feed

  • 問題

  • 大大您们好,請問我在 datagridview創建一個button鈕(如下),可是我想指定它顯示位置,由於我在網路上找到的都只有交如何創建,請各位大大給我指教,謝謝
                DataGridViewRow Myrow = new DataGridViewRow();
                DataGridViewButtonCell Mycell = new DataGridViewButtonCell();
                Mycell.Value = "Save";
                Myrow.Cells.Add(Mycell);
    2009年5月8日 上午 09:57

解答

  • Hi

    是指這樣嗎?!
                int rowIdx = dataGridView1.Rows.Add ();
                DataGridViewRow Myrow = dataGridView1.Rows[rowIdx];
                DataGridViewButtonCell Mycell = new DataGridViewButtonCell();
                Mycell.Value = "Save";
                Myrow.Cells[1 ]= (Mycell);    

    http://www.dotblogs.com.tw/larrynung/
    • 已標示為解答 冰糖旋風 2009年5月8日 上午 10:22
    2009年5月8日 上午 10:05

所有回覆

  • Hi

    是指這樣嗎?!
                int rowIdx = dataGridView1.Rows.Add ();
                DataGridViewRow Myrow = dataGridView1.Rows[rowIdx];
                DataGridViewButtonCell Mycell = new DataGridViewButtonCell();
                Mycell.Value = "Save";
                Myrow.Cells[1 ]= (Mycell);    

    http://www.dotblogs.com.tw/larrynung/
    • 已標示為解答 冰糖旋風 2009年5月8日 上午 10:22
    2009年5月8日 上午 10:05
  • 大大謝謝你
    2009年5月8日 上午 10:22
  • 大大您好,那可以順便請教您,如果我有一行資料,我想要將他分一半顯示在左右,您可以在教我如何撰寫嗎,謝謝,因為我有試了一些辦法,可是還是行不通,謝謝
    2009年5月8日 上午 11:09
  • Hi
    妳是指妳另一篇datagridview並列 多維陣列的問題?!
    其實DataGridView我不熟
    不常用
    也許妳可以貼出你試的方法與期望的效果
    看看是否有辦法修改

    http://www.dotblogs.com.tw/larrynung/
    2009年5月8日 下午 01:35
  • 大大您好,this大大貼給我的方法我有試過,這個方法也是很好,但我想到我想要另外一個
    如 datagridview顯示如下結果:
     日期                時間          日期         時間
    20009/03/14   18:22  2009/04/25    18:23
    2009/03/15     19:21  2009/04/26    19:25

    謝謝
    2009年5月11日 上午 12:33
  • 我大概只會這樣
       private void button1_Click(object sender, EventArgs e)
            {
                int rowIdx = 0;
                DataGridViewRow Myrow = null;
                for (int i = 0; i < 10; i++)
                {
                    if (i % 2 == 0)
                    {
                        rowIdx = dataGridView1.Rows.Add();
                        Myrow = dataGridView1.Rows[rowIdx];
                    }
                    DataGridViewButtonCell Mycell = new DataGridViewButtonCell();
                    Mycell.Value = i.ToString();
                    Myrow.Cells[i%2] = (Mycell);
                }
            }

    http://www.dotblogs.com.tw/larrynung/
    2009年5月11日 上午 02:01
  • 大大謝謝您喔,那請問我可以根據進來的資料,指定顯示位置嗎,謝謝
    2009年5月12日 上午 03:20
  • 應該把上面概念提出成函式就可以了
    大概如下
    這Code有個問題是前面指定好的按鈕離開函式就會自動變成Null
    我目前找不到問題點
    你可以試著改改看

           private void button1_Click(object sender, EventArgs e)
            {
                for (int i = 0; i < 10; i++)
                {
                    DataGridViewButtonCell Mycell = new DataGridViewButtonCell();
                    Mycell.Value = i.ToString();
                    SetData(i, Mycell);
                }

            }

            private void SetData(int idx, params DataGridViewCell[] values)
            {
                int rowIdx = idx / 2;
                int colIdx = (idx % 2) * values.Length;
                if (dataGridView1.RowCount <= rowIdx)
                {
                    dataGridView1.RowCount = rowIdx+1;
                }
                foreach (DataGridViewCell val in values){
                    dataGridView1.Rows[rowIdx].Cells[colIdx] = val;
                    colIdx++;
                }
            }

    http://www.dotblogs.com.tw/larrynung/
    2009年5月12日 上午 06:20
  • 大大謝謝您
    2009年5月12日 上午 06:26