Tag: 右键单击

移动无边框Winform按住鼠标右键,可能使用本机方法

我有一种情况,我想通过在其客户区域上按住鼠标右键来移动窗体; 正如我所说,这种forms是无国界的。 我想“本地”移动它(如果可能的话,否则其他答案也可以)。 我的意思是当你在标题栏上按住鼠标左键时它的行为方式(鼠标移动和类似的东西,我得到很多奇怪的行为,但也许只是我)。 我已经阅读了很多内容,这篇文章看起来很有帮助 http://social.msdn.microsoft.com/Forums/en-US/csharpgeneral/thread/b9985b19-cab5-4fba-9dc5-f323d0d37e2f/ 我尝试了各种方式来使用它,并通过http://msdn.microsoft.com/en-us/library/ff468877%28v=VS.85%29.aspx观看以寻找其他有用的东西,WM_NCRBUTTONDOWN出现在我的脑海中, wndproc没有检测到它,也许是因为它是由表单处理的? 任何建议都表示赞赏,谢谢 弗朗切斯科

我是否可以扩展Button以添加RightClick事件,以便保持图形副作用?

我正在尝试扩展Button以添加RightClick事件。 我的客户想要一个按钮来执行不同的操作,具体取决于您是左键单击还是右键单击。 我希望有一个简单的右键点击事件,但结果却没有。 我更喜欢Button的视觉行为与之前存在的Click事件相同,但事实certificate这很难。 单击并拖动按钮时,按钮会出现许多图形行为。 单击时,按钮会降低。 如果你拖下降低的按钮,它会升起(例如,降低)。 您拖动的任何其他按钮都会忽略它。 当您向后拖动原始按钮时,它将再次降低。 如果您拖动然后松开,原始按钮的状态应该重置(即您无法重新点击并再次拖动)。 如果左键单击视觉效果与右键单击视觉效果不匹配,这些小图形怪癖将显得粗糙。 目前我坚持这样:如果右键单击并按住按钮,然后拖动按钮,如何检测用户是否取消点击? 我需要知道这一点,所以我知道不要在重新进入时重新按下按钮。 一个更广泛的问题:我是否走上正轨? 我以前找不到任何人这样做过的人。 我的代码如下。 public class RightClickButton : Button { public event RoutedEventHandler RightClick; public RightClickButton() { this.MouseRightButtonDown += new System.Windows.Input.MouseButtonEventHandler(RightClickButton_MouseRightButtonDown); this.MouseRightButtonUp += new System.Windows.Input.MouseButtonEventHandler(RightClickButton_MouseRightButtonUp); this.MouseEnter += new System.Windows.Input.MouseEventHandler(RightClickButton_MouseEnter); this.MouseLeave += new System.Windows.Input.MouseEventHandler(RightClickButton_MouseLeave); } void RightClickButton_MouseRightButtonDown(object sender, System.Windows.Input.MouseButtonEventArgs e) { this.IsPressed = true; […]

无法在ComboBox中检测到鼠标右键

我有一个简单的下拉式ComboBox。 当用户右键单击列表中的某个项目时,我想打开一个新窗口,但是在检测到右键单击时遇到问题。 我的代码: private void cmbCardList_MouseClick(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Right && cmbCardList.SelectedIndex != -1) { frmViewCard vc = new frmViewCard(); vc.updateCardDisplay(cmbCardList.SelectedItem); vc.Show(); } } 如果我改变e.Button == MouseButtons.Left整个事情就好了。 我有什么方法可以让我按照我的意愿工作?

右键单击以选择ListBox中的项目

我正在尝试制作一个项目列表,您可以通过右键单击并启用上下文菜单来执行多项操作。 我已经完成了,没有任何问题。 但我想拥有它,以便当您右键单击某个项目而不是选择当前项目时,选择鼠标所在的项目。 我已经研究了这个和其他相关问题,并且我尝试使用indexFromPoint(我通过我的研究发现),但每当我右键单击某个项目时,它总是只清除所选项目而不显示上下文菜单,因为我设置它,以便它没有出现,如果没有选定的项目。 这是我目前使用的代码: ListBox.SelectedIndex = ListBox.IndexFromPoint(Cursor.Position.X, Cursor.Position.Y);

右键单击以选择dataGridView中的行

我需要在显示ContextMenu之前右键单击dataGridView中的一行,因为contextMenu是row-dependendt。 我试过这个: if (e.Button == MouseButtons.Right) { var hti = dataGrid.HitTest(eX, eY); dataGrid.ClearSelection(); dataGrid.Rows[hti.RowIndex].Selected = true; } 要么: private void dataGrid_CellMouseDown(object sender, DataGridViewCellMouseEventArgs e) { if (e.Button == MouseButtons.Right) { dataGrid.Rows[e.RowIndex].Selected = true; dataGrid.Focus(); } } 这有效,但当我尝试读取dataGrid.Rows [CurrentRow.Index]时,我只看到左键单击选中的行而不是右键单击选中的行。

wpf listview右键单击问题

所以我已经将一个上下文菜单(右键菜单)附加到wpf listview。 不幸的是,当你右键单击它时会显示菜单并选择你所在的任何项目。 有没有办法在仍允许上下文菜单的同时关闭此右键单击选择行为?