Winforms ToolStripDropDownButton右对齐时不显示项

Winforms ToolStripDropDownButton右对齐时不显示项,winforms,toolstrip,toolstripbutton,Winforms,Toolstrip,Toolstripbutton,我开发了一个带有工具栏的Winforms应用程序。工具栏中的最后一个元素是带有某些项的ToolStripDropDownButton 我需要将此按钮与所有其他工具栏按钮分开显示,因此我将“对齐”属性设置为“右侧” 但是,在我的PC中,当我将整个Visual Studio项目移动到笔记本中,然后运行应用程序时,当我单击按钮时,菜单项不会显示,但是,下拉按钮会改变颜色,指示它已被选中 在设计时,项目将正确显示 这里发生了什么,有可能解决吗?目前,我将按钮对齐设置为左侧,以便与其他工具栏按钮一起显示

我开发了一个带有工具栏的Winforms应用程序。工具栏中的最后一个元素是带有某些项的ToolStripDropDownButton

我需要将此按钮与所有其他工具栏按钮分开显示,因此我将“对齐”属性设置为“右侧”

但是,在我的PC中,当我将整个Visual Studio项目移动到笔记本中,然后运行应用程序时,当我单击按钮时,菜单项不会显示,但是,下拉按钮会改变颜色,指示它已被选中

在设计时,项目将正确显示

这里发生了什么,有可能解决吗?目前,我将按钮对齐设置为左侧,以便与其他工具栏按钮一起显示

谢谢
Jaime检查笔记本上的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;

检查笔记本上的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;

你是对的。。。笔记本电脑的dpi已更改,但我不需要进行这种变通。问题是我将外部监视器连接器连接到它。有了它,笔记本电脑的DPI被改变了,我想是为了适应使用显示器的屏幕扩展。我注意到外部显示器可能会对DPI设置产生奇怪的影响。主显示器上可以有100%的DPI,而辅助显示器上可以有120%的DPI。当您以编程方式检查DPI设置时,您可能会得到混合的结果,这可能很难解释。您是对的。。。笔记本电脑的dpi已更改,但我不需要进行这种变通。问题是我将外部监视器连接器连接到它。有了它,笔记本电脑的DPI被改变了,我想是为了适应使用显示器的屏幕扩展。我注意到外部显示器可能会对DPI设置产生奇怪的影响。主显示器上可以有100%的DPI,而辅助显示器上可以有120%的DPI。当您以编程方式检查DPI设置时,可能会得到混合的结果,这可能很难解释。