re Maustaste auf Filesauswahl

19/09/2008 - 11:56 von Uwe Domschke | Report spam
Hallo,
ich habe eine Listbox, mit der ich Files eines Pfades anzeige:

FileInfo[] aktFiles = dir.GetFiles(FileArt.SelectedItem.ToString());
Files.DataSource = aktFiles;

Mit der rechten Maustaste zeige ich ein ContextMenu an, mit dem ich versch.
Aktionen (z.B. Löschen) wàhlen kann. Das ContextMenu habe ich im
Files.ContentMenuStrip angegeben.
Mein Problem ist nun, dass ich an beliebiger Stelle von Files mit der re
Maus das Menu aufrufen kann. Dabei sollte es nur kommen, wenn ich auf einen
Filenamen klicke. Mit dem Click-Event positioniere ich auf das ausgewàhlte
File, was aber nur mit der li Maustaste funktioniert. Das sollte aber auch
mit der re Maustaste funktionieren.

Vielen Dank für die Hilfe

Uwe
 

Lesen sie die antworten

#1 Werner Schmidt
19/09/2008 - 14:01 | Warnen spam
Hallo Uwe,

fang doch das Context-Menü-Opening-Ereignis ab und prüfe, ob ein von dir
gewünschtes Element (in deinem Fall ein Dateiname) selektiert ist.
Sollte dies nicht der Fall sein, kannst du innerhalb deines Ereignisses
e.Cancel = true setzen und das Kontextmenü wird gar nicht erst angezeigt.


Ungefàhr so:

[PSEUDO-CODE]
private void contextMenuStrip1_Opening(object sender, CancelEventArgs e)
{
if (%kein Dateiname ausgewàhlt%) {
e.Cancel = true;
}
}
[/PSEUDO-CODE]


Ein schönes Wochenende wünscht


Werner

Uwe Domschke schrieb:
Hallo,
ich habe eine Listbox, mit der ich Files eines Pfades anzeige:

FileInfo[] aktFiles = dir.GetFiles(FileArt.SelectedItem.ToString());
Files.DataSource = aktFiles;

Mit der rechten Maustaste zeige ich ein ContextMenu an, mit dem ich
versch. Aktionen (z.B. Löschen) wàhlen kann. Das ContextMenu habe ich im
Files.ContentMenuStrip angegeben.
Mein Problem ist nun, dass ich an beliebiger Stelle von Files mit der re
Maus das Menu aufrufen kann. Dabei sollte es nur kommen, wenn ich auf
einen Filenamen klicke. Mit dem Click-Event positioniere ich auf das
ausgewàhlte File, was aber nur mit der li Maustaste funktioniert. Das
sollte aber auch mit der re Maustaste funktionieren.

Vielen Dank für die Hilfe

Uwe

Ähnliche fragen