一天未解决有关问题,请帮下小弟我,没有办法,今天要加班了
一天未解决问题,请帮下我,没有办法,今天要加班了
我这在一个Canvas里面,加载有很多的控件,例如按钮等;现在我右键出来一个菜单MENU菜单,菜单的内容是:菜单1、菜单2等;单击“菜单1”进入这个菜单的事件处理,我怎么判断在Canvas里面单击的具体按钮ID呢,很郁闷,不知道怎么写?
UIElement uid = new UIElement();
uid=ContextMenuService.GetPlacementTarget(LogicalTreeHelper.GetParent(sender as MenuItem));
这个只能获取Canvas,获取不到单击了那个按钮,求大神相助;
------解决思路----------------------
------解决思路----------------------
private Button SelButton;
private void RegButton(Canvas can)
{
foreach (UIElement ctl in can.Children)
{
if (ctl is Button)
{
ctl.MouseDown += ctl_MouseDown;
}
}
}
void ctl_MouseDown(object sender, System.Windows.Input.MouseButtonEventArgs e)
{
SelButton=sender as Button;
}
------解决思路----------------------
参见:http://blog.****.net/duanzi_peng/article/details/17094639 获取父元素。
------解决思路----------------------
右键菜单是绑哪里?控件还是Canvas 没说清楚啊
------解决思路----------------------
我这在一个Canvas里面,加载有很多的控件,例如按钮等;现在我右键出来一个菜单MENU菜单,菜单的内容是:菜单1、菜单2等;单击“菜单1”进入这个菜单的事件处理,我怎么判断在Canvas里面单击的具体按钮ID呢,很郁闷,不知道怎么写?
UIElement uid = new UIElement();
uid=ContextMenuService.GetPlacementTarget(LogicalTreeHelper.GetParent(sender as MenuItem));
这个只能获取Canvas,获取不到单击了那个按钮,求大神相助;
------解决思路----------------------
private Button SelButton;
private void RegButton()
{
Canvas can = new Canvas();
foreach (UIElement ctl in can.Children)
{
if (ctl is Button)
{
ctl.MouseDown += ctl_MouseDown;
}
}
}
void ctl_MouseDown(object sender, System.Windows.Input.MouseButtonEventArgs e)
{
SelButton=sender as Button;
}
然后在你的菜单事件中访问selbutton就可以了啊
------解决思路----------------------
private Button SelButton;
private void RegButton(Canvas can)
{
foreach (UIElement ctl in can.Children)
{
if (ctl is Button)
{
ctl.MouseDown += ctl_MouseDown;
}
}
}
void ctl_MouseDown(object sender, System.Windows.Input.MouseButtonEventArgs e)
{
SelButton=sender as Button;
}
------解决思路----------------------
参见:http://blog.****.net/duanzi_peng/article/details/17094639 获取父元素。
------解决思路----------------------
你右键菜单是Canvas的对吧,你现在是要判断,在那个控件(按钮上右键的?)
Canvas里面有很多按钮控件,我任意单击一个按钮,然后右键出来MENU菜单,在这个MENU菜单里怎么知道我单击了那个按钮?
右键菜单是MENU菜单,现在判断的单击了那个按钮?
------解决思路----------------------
你是在 按钮上的右键??
恩,先单击按钮,然后右键单击出来 MENU菜单,然后进入MENU菜单的处理事件,怎么判断我是单击的那个按钮,这个按钮是CANVAS里面的按钮。
参见:http://blog.****.net/duanzi_peng/article/details/17094639 获取父元素。
我说Canvas里面有很多控件类型,比如还有很多checkbox,botton,textbox等,我在任何一个控件上右键单击出来一个MENU菜单,例如MENU菜单里面有“功能1”,“功能2”,这时候我但是功能1,进入了这个MENU的处理事件,我要获取我是在Canvas里面的那个控件上单击出来MENU菜单的,其实就是这样的需求。
private UIElement CurUI;
private void RegButton(Canvas can)
{
foreach (UIElement ctl in can.Children)
{
if (ctl is Button)
{
ctl.MouseDown += ctl_MouseDown;
}