ToolStripDropDownButton 右对齐时不显示项目
ToolStripDropDownButton does not show items when right aligned
我开发了一个带有工具栏的 Winforms 应用程序。工具栏中的最后一个元素是带有一些项目的 ToolStripDropDownButton。
我需要将此按钮与所有其他工具栏按钮分开显示,因此我将对齐 属性 设置为右侧。
在我的 PC 上这完美地工作,但是,当我将整个 Visual Studio 项目移动到我的笔记本然后 运行 应用程序时,单击按钮时没有显示菜单项,但是,下拉按钮会改变颜色,表明它已被选中。
在设计时,项目显示正确。
这是怎么回事,是否可以解决?目前,我将按钮对齐设置为左对齐,以便它与其他工具栏按钮一起显示。
谢谢
海梅
检查笔记本电脑上的 DPI 设置。它可能会改变元素的大小和填充。您可以通过检查系统的 DPI 值并根据该值计算控件的大小来解决这个问题。
var graphics = this.CreateGraphics();
var dpiX = graphics.DpiX / 96d; // Default DPI
var dpiY = graphics.DpiY / 96d; // Default DPI
myToolbar.Width = myWidth * dpiX;
myToolbar.Height= myHeight * dpiY;
我开发了一个带有工具栏的 Winforms 应用程序。工具栏中的最后一个元素是带有一些项目的 ToolStripDropDownButton。
我需要将此按钮与所有其他工具栏按钮分开显示,因此我将对齐 属性 设置为右侧。
在我的 PC 上这完美地工作,但是,当我将整个 Visual Studio 项目移动到我的笔记本然后 运行 应用程序时,单击按钮时没有显示菜单项,但是,下拉按钮会改变颜色,表明它已被选中。
在设计时,项目显示正确。
这是怎么回事,是否可以解决?目前,我将按钮对齐设置为左对齐,以便它与其他工具栏按钮一起显示。
谢谢 海梅
检查笔记本电脑上的 DPI 设置。它可能会改变元素的大小和填充。您可以通过检查系统的 DPI 值并根据该值计算控件的大小来解决这个问题。
var graphics = this.CreateGraphics();
var dpiX = graphics.DpiX / 96d; // Default DPI
var dpiY = graphics.DpiY / 96d; // Default DPI
myToolbar.Width = myWidth * dpiX;
myToolbar.Height= myHeight * dpiY;