Jag har letat men jag har väll inte förstät, finns det i dataGridView1 en händelse som liknar Ja den händelsen finns och triggas default om man klickar på en select-row-knapp.... Men du skulle kunna dölja knappen + trigga den med Javascript också. Lite meckigt kanske men det borde gå bra. Jodå det finns. Var några månader sedan jag arbetade med det, men vad ja minns är att du kan känna av när du markerar något i din DataGridView och därefter kan du då kolla vilken rad och vilken cell du valt. Om du skapar den direkt från kod så är detta ett exempel: Jag kan visa ett exempel för om du har tryckt ner 1 rad. Men du förstår nog hur man gör om det skulle vara flera rader. Filip, du skall ha tack för att du försöker att hjälpa mig, men jag åker på patrull. Först och främst får du se till att du lägger till din DataGridView i ditt fönster, lättast är om du bara drar ni en DataGridView i designern, sedan så går du in i Properties och så trycker du på Blixten som är där, detta är en lista över alla events som DataGridView har att erbjuda, skrolla ner till du ser SelectionChanged, dubbelklicka på den och sedan i metoden som du kommer till lägger du in följande kod:Om dataGridView
llistBox_SelectedIndexChanged?
DVS så att man med piltangenterna kan flytta ner till andra poster och få en händelse att utlösa?Sv: Om dataGridView
Sv: Om dataGridView
Har du kollat under Event-hanteraren? ( om du använder Visual Studio 2005 dvs. ).
Jag kan göra en testapplikation till dig senare idag om du fortfarande inte har löst problemet.
Hälsningar,
FilipSv: Om dataGridView
DataGridView dgv = new DataGridView();
dgv.SelectionChanged += new EventHandler(myFunction);
Sedan har du funktioner i DataGridView som heter SelectedCells, SelectedRows och SelectedColumns.
Hoppas detta hjälpte dig!
Sv: Om dataGridView
Sedan något du får tänka på är att SelectionChanged körs när programmet precis startar. Men här kommer myFunction:
private void myFunction(object sender, EventArgs e)
{
DataGridView dgv = (DataGridView)sender;
MessageBox.Show("Column: " + dgv.SelectedCells[0].ColumnIndex.ToString() + "\nRad: " + dgv.SelectedCells[0].RowIndex.ToString());
}
Sv:Om dataGridView
Så här ser det då ut:
<code>
//i public Form1()
{
DataGridView dgv = new DataGridView();
dgv.SelectionChanged += new EventHandler(myFunction);// skall denna ligga här???
private void myFunction(object sender, EventArgs e)
{
DataGridView dgv = (DataGridView)sender;
this.Text = "SAW Registrering - Melodistatistik sång - " + dgv.SelectedCells[1].Value.ToString();
}
</code>
Ingenting händer, vad gör jag för fel???Sv: Om dataGridView
DataGridView dgv = (DataGridView)sender;
MessageBox.Show("Column: " + dgv.SelectedCells[0].ColumnIndex.ToString() + "\nRad: " + dgv.SelectedCells[0].RowIndex.ToString());
Funktionen kommer då se ut något liknande detta:
private void dataGridView1_SelectionChanged(object sender, EventArgs e)
{
DataGridView dgv = (DataGridView)sender;
MessageBox.Show("Column: " + dgv.SelectedCells[0].ColumnIndex.ToString() + "\nRad: " + dgv.SelectedCells[0].RowIndex.ToString());
}
Jag tog en bild här på hur det ser ut:
http://frw.se/datagridview.jpg
Hoppas det klarnar upp lite för dig nu. Men så som du visade är inte korrekt, du lägger inte funktionen i konstruktorn. Såhär skulle det se ut på ett korrekt sätt ( om du nu lagt till DataGridView'n från Designern:
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
DataGridView dgv = new DataGridView();
dgv.SelectionChanged += new EventHandler(myFunction);
}
private void dataGridView1_SelectionChanged(object sender, EventArgs e)
{
DataGridView dgv = (DataGridView)sender;
MessageBox.Show("Column: " + dgv.SelectedCells[0].ColumnIndex.ToString() + "\nRad: " + dgv.SelectedCells[0].RowIndex.ToString());
}
}
Lycka till!