C# faites un clic Droit sur l'Arborescence de nœuds
J'ai un TreeView
avec le nœud parent : Node0
. J'ai ajouter 3 subnodes
:
Node01
Node02
Node03
J'ai un popup menu
qui est associé à chacun des sous-nœuds.
Mon problème: Si je clic droit directement à l'un des sous-nœuds, mon popup ne s'affiche pas. Donc, j'ai pour Sélectionner le sous-nœud premier et le bouton Droit de la souris pour le popup affiche.
- Comment puis-je changer le code de sorte que le Clic Droit sur un sous-nœud ouvrir le PopupMenu?
- Le popupMenu ont seulement
OpenMe
menu dans la liste. En cliquant sur ce menu, windows est censé l'ouvrir et c'est ce que windows doit être associé au sous-menu, j'ai cliqué. Comment obtenir de l'Événement du droit-cliquez sur le sous-menu et afficher le Formulaire avec elle?
EDIT:
Regardez cette
private void modifySettingsToolStripMenuItem_Click(object sender, EventArgs e)
{
try
{
String s = treeView1.SelectedNode.Text;
new chartModify(s).ShowDialog();
}
catch (Exception er)
{
System.Console.WriteLine(">>>" + er.Message);
}
}
La ligne String s = treeView1.SelectedNode.Text;
obtient le nom du nœud sélectionné et pas le nœud qui ont été cliqué avec le bouton droit.
Donc ici j'ai modifier ce bout de code avec la
private void treeview1_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e)
{
if (e.Button == MouseButtons.Right)
MessageBox.Show(e.Node.Name);
}
Je le modifier comme ceci:
try
{
TreeNodeMouseClickEventArgs ee;
new chartModify(ee.Node.Name).ShowDialog();
}
mais il ne fonctionne pas : Error:Use of unassigned local variable 'ee'
EDIT #2: Enfin obtenu la solution
public string s;
private void modifySettingsToolStripMenuItem_Click(object sender, EventArgs e)
{
try
{
new chartModify(s).ShowDialog();
}
catch (Exception er)
{
System.Console.WriteLine(">>>" + er.Message);
}
}
et puis
private void treeview1_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e)
{
if (e.Button == MouseButtons.Right)
{
s = e.Node.Name;
menuStrip1.Show();
}
}
il fonctionne,
Grâce
La technologie? WinForms? WebForms? ASP.NET MVC? WPF?
OriginalL'auteur DeathCoder | 2013-01-08
Vous devez vous connecter pour publier un commentaire.
Vous pouvez essayer d'utiliser le
NodeMouseClick
Cas, il utilise leTreeNodeClickEventArgs
pour obtenir le Bouton et le Nœud qui a été cliqué.Modifié le Code pour afficher Popup et a créé Forme
est-ce Winforms ou Wpf?
voici Winforms
Merci Mark Hall, votre code me donne inpiration. - Je modifier de ce sujet avec la solution
Vous êtes la bienvenue, heureux de vous aider
OriginalL'auteur Mark Hall
Cela vous donnera la treenode à un point de souris lorsque votre clic droit.
À partir d'ici, vous devriez être en mesure d'ouvrir un menu contextuel.
OriginalL'auteur Jastill