【问题标题】:C# Form DropDownStyle different when called as class library from vbscript当从 vbscript 作为类库调用时,C# Form DropDownStyle 不同
【发布时间】:2018-01-20 19:45:55
【问题描述】:

我有一个 Windows 窗体,它有一个组合框。组合框具有属性 DropDownStyle。我已将其值设置为 DropDownList。即 DropDownStyle:DropDownList。当表单作为 Windows 应用程序加载时,它工作正常。但是当我从 vbscript 将其称为类库时,它会显示带有不同样式的组合框的表单(附在屏幕截图中)。谁能提出为什么它的风格会出现差异?

编辑:vbscript 代码是:

dim objTest, intResult, strResult
Set objTest = CreateObject ("Authentication.Initialize")
strResult = objTest.showOptions ("username", "Methods", "method1,method2")
Wscript.echo "Result = " & strResult

表格是这样的

而设计中的形式是:

【问题讨论】:

  • 您能展示一下您用来从 VBScript 调出表单的代码吗?你确定它很简单吗? (即,是text portion editable)?
  • 我已经编辑了帖子并包含了 vbscript。不,它不可编辑,哦,这意味着实际上样式不是简单的,但它看起来不同

标签: c# combobox


【解决方案1】:

Try this 看看它是否有助于使 VBScript 托管的程序看起来与您的可执行文件相同:您的程序可能默认启用了视觉样式,而 VBScript 主机没有。

Application.EnableVisualStyles();

确保在呈现任何控件之前调用它。

如果您希望您的程序“降级”到旧外观,这也是可能的,请参阅https://social.msdn.microsoft.com/Forums/windows/en-US/b8e994b4-b3d5-4043-9950-3656ae6ca686/disable-visual-styles?forum=winforms

 Application.VisualStyleState = VisualStyleState.NoneEnabled;

【讨论】:

  • 非常感谢。它解决了我的问题。我在 InitializeComponent() 之前在表单的构造函数中调用了它,现在它看起来一样:)
猜你喜欢
  • 1970-01-01
  • 2017-08-07
  • 1970-01-01
  • 2016-07-20
  • 1970-01-01
  • 2013-06-28
  • 2015-08-27
  • 2014-12-26
  • 2020-04-11
相关资源
最近更新 更多