Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > .NET Framework > Forum > Win (Windows App) เราจะทำให้เลื่อนขึ้นเลื่อนลงของข้อมูลใน DataGridView ยังไงครับ



 

Win (Windows App) เราจะทำให้เลื่อนขึ้นเลื่อนลงของข้อมูลใน DataGridView ยังไงครับ

 



Topic : 089537

Guest




คือผมมีข้อมูล 5 แถวอยู่ใน DataGridView

แต่ต้องการให้ผู้ใช้คลิกเลือกเรียงลำดับได้น่ะครับ ในฐานข้อมูลผมทำ ฟิลล์ สำหรับเรียงลำดับไว้แล้วน่ะครับ
แต่ไม่รุ้จะทำใน form ยังไงแนะนำหน่อยนะครับ

เช่น
1
2
3
4
5

ผู้ใช้ต้องการเรียงข้อมูลใหม่ โดยคลิกที่แถว 3 แล้วจะกด button เลื่อนขึ้น
ข้อมูลจะเปนแบบนี้
1
3
2
4
5

แต่พอเวลาsave มันกจะเรียงเปน 12345 น่ะครับแต่สลับแล้ว แนะนำหน่อยครับ



Tag : .NET, Win (Windows App), C#, VS 2010 (.NET 4.x), Windows







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2013-01-21 23:33:18 By : TESTER View : 1116 Reply : 6
 

 

No. 1

Guest


มั่วให้ เขียนสด

Code (C#)
private void buttonUp_Click(object sender, EventArgs e)
{
   int currentRowIndex = dataGridView1.CurrentRow.Index;

   if (currentRowIndex > 0)
   {
      string tempValue = (string)dataGridView1.Rows[currentRowIndex - 1].Cells[0].Value;
      dataGridView1.Rows[currentRowIndex - 1].Cells[0].Value = dataGridView1.Rows[currentRowIndex ].Cells[0].Value
      dataGridView1.Rows[currentRowIndex ].Cells[0].Value = tempValue;
   }
}

private void buttonDown_Click(object sender, EventArgs e)
{
   int currentRowIndex = dataGridView1.CurrentRow.Index;

   if (currentRowIndex < dataGridView1.Rows.Count)
   {
      string tempValue = (string)dataGridView1.Rows[currentRowIndex + 1].Cells[0].Value;
      dataGridView1.Rows[currentRowIndex + 1].Cells[0].Value = dataGridView1.Rows[currentRowIndex ].Cells[0].Value
      dataGridView1.Rows[currentRowIndex ].Cells[0].Value = tempValue;
   }
}







แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-01-22 08:18:56 By : ห้ามตอบเกินวันละ 2 กระทู้
 


 

No. 2

Guest


เดี๋ยวขอลองดูก่อนนะครับ

ขอบคุณมากๆเลยครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-01-22 14:49:09 By : TESTER
 

 

No. 3

Guest


ตอบความคิดเห็นที่ : 1 เขียนโดย : ห้ามตอบเกินวันละ 2 กระทู้ เมื่อวันที่ 2013-01-22 08:18:56
รายละเอียดของการตอบ ::
ผมลองดูแล้วอะครับ มันไม่มีอะไรเกิดขึ้นเลยอะครับ

รบกวนขอคำแนะนำหน่อยนะครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-01-22 16:17:26 By : TESTER
 


 

No. 4

Guest


แฮนเดิลอีเวนต์อ่ะยัง
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-01-22 16:19:59 By : ห้ามตอบเกินวันละ 2 กระทู้
 


 

No. 5

Guest


ตอนนี้ผมลองใช้ประมาณนี้น่ะครับแต่พอกดปุ่ม up แถวมันหายไปทั้งแถวเฉยเลยอะครับแทนที่จะเลื่อนขึ้น

Code
private void up_Click(object sender, EventArgs e)
{
DataGridView grid = dataGridView1;
try
{
int totalRows = grid.Rows.Count;
int idx = grid.SelectedCells[0].OwningRow.Index;
if (idx == 0)
return;
int col = grid.SelectedCells[0].OwningColumn.Index;
DataGridViewRowCollection rows = grid.Rows;
DataGridViewRow row = rows[idx];
rows.Remove(row);
rows.Insert(idx - 1, row);
grid.ClearSelection();
grid.Rows[idx - 1].Cells[col].Selected = true;

}
catch { }
}

private void down_Click(object sender, EventArgs e)
{
DataGridView grid = dataGridView1;
try
{
int totalRows = grid.Rows.Count;
int idx = grid.SelectedCells[0].OwningRow.Index;
if (idx == totalRows - 2)
return;
int col = grid.SelectedCells[0].OwningColumn.Index;
DataGridViewRowCollection rows = grid.Rows;
DataGridViewRow row = rows[idx];
rows.Remove(row);
rows.Insert(idx + 1, row);
grid.ClearSelection();
grid.Rows[idx + 1].Cells[col].Selected = true;
}
catch { }
}

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-01-22 16:39:09 By : TESTER
 


 

No. 6

Guest


data set ที่อยุ่ใน gridview ก็ประมาณนี้น่ะครับ

Code (C#)
DataSet ds = new DataSet();
                ds.Tables.Add();
                ds.Tables[0].Columns.Add("โรงเรียน");
                ds.Tables[0].Columns.Add("ระดับชั้น");
                ds.Tables[0].Columns.Add("ชื่อหมวดหมู่");
                ds.Tables[0].Columns.Add("เพศ");
                ds.Tables[0].Columns.Add("ID");
                for (int i = 0; i < this._categories.Count; i++)
                {
                    string gender = "";
                    switch (this._categories[i].Gender)
                    {
                        case Gender.NONE:
                            gender = "ไม่มี";
                            break;
                        case Gender.MALE:
                            gender = "ชาย";
                            break;
                        case Gender.FEMALE:
                            gender = "หญิง";
                            break;
                    }
                    ds.Tables[0].Rows.Add(this._categories[i].School.Name, this._categories[i].School.Grade.Name, this._categories[i].Name, gender, this._categories[i].Id);
                }
                dataGridView1.DataSource = ds.Tables[0];
                dataGridView1.Columns["ID"].Visible = false;

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-01-22 16:44:03 By : TESTER
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : Win (Windows App) เราจะทำให้เลื่อนขึ้นเลื่อนลงของข้อมูลใน DataGridView ยังไงครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 01
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่