小编Val*_*adu的帖子

替换为通配符

我需要一些建议.假设我有以下字符串:Read Variable 我想找到一个字符串像这样的文本的所有作品,让所有的人都像下面这样:Variable = MessageBox.Show.作为附加示例:

"Read Dog" --> "Dog = MessageBox.Show"
"Read Cat" --> "Cat = MessageBox.Show"
Run Code Online (Sandbox Code Playgroud)

你能帮助我吗?我需要在C#中使用RegEx快速建议.我认为这是一项涉及通配符的工作,但我不知道如何使用它们......而且,明天我需要这个用于学校项目...谢谢!

编辑:这是我到目前为止所做的,它不起作用:Regex.Replace(String, "Read ", " = Messagebox.Show").

c# regex

8
推荐指数
3
解决办法
2万
查看次数

Visual Studio 设计器无法加载

在我的应用程序中,我使用 ScintillaNET DLL 并创建了一个名为 BufferedScintilla 的类,我在其中继承控件并对其进行双缓冲。没有什么不寻常的,只是正常的 C# 继承...然后,我修改了表单的 Designer.cs 文件,并从使用 ScintillaNET.Scintilla() 切换到 BufferedScintilla()。

该应用程序按预期加载并正常工作,但 Visual Studio 2013 设计器无法加载,告诉我“无法将 BufferedScintilla 类型的对象转换为 ScintillaNET.Scintilla 类型。我尝试了一切,清理了解决方案并重建,仅重建,调试,关闭并重新启动 Visual Studio,甚至重新启动 PC,但没有任何帮助... Visual Studio 设计器拒绝让我设计我的表单。

再次,该应用程序运行良好,并且我确信表单上的控件是新的 BufferedScintilla,而不是 ScintillaNET.Scintilla,因为我可以看到效果(它是双缓冲的,我在其上绘制的自定义图形不会闪烁)不再),所以我 100% 确定该应用程序与继承的组件一起运行。

我确信这是 Visual Studio 的某种小缺陷,所以我正在寻找一种解决方案,让它让我再次设计我的应用程序。

编辑:为了澄清,同样的事情也发生在 Visual Studio 2013 Update 1 和 Visual Studio 2010 中。我检查了程序集,它是作为任何CPU构建的,所以Visual Studio设计器应该没有问题......

编辑:由于似乎不可能修复此问题(某种错误),因此我期待一种在构建项目之前以及在构建项目之后(或不构建)自动替换 Designer.cs 文件中的行的方法。是否有任何 Visual Studio 工具可以在项目构建之前和构建之后按下“构建”按钮后自动替换类中的某些文本?我想替换构造函数和声明,以便在设计时它是ScintillaNET.Scintilla,在运行时它是BufferedScintilla。谢谢!

提前致谢!

瓦利

c# casting designer scintilla visual-studio-2013

5
推荐指数
1
解决办法
1289
查看次数

如何改变ToolStrip DropDown箭头的颜色?

在我的Winforms应用程序中,我有一个工具条,我将它的BackColor属性设置为Black.一切都很好,除了工具栏上的每个下拉按钮都将其下拉箭头绘制成黑色,从而使其不可见.我的问题是,如何更改此箭头的颜色?我在工具条渲染器中寻找了一些有用的东西,但我找到的只是ToolStripDropDownBackground.那么,我怎么把它变成白色呢?谢谢

c# toolstrip

4
推荐指数
1
解决办法
1672
查看次数

其他进程的GetKeyboardLayoutName?

基本上,我想做的是让 GetKeyboardLayoutName 返回其他进程的键盘 ID (KLID)。默认情况下,它仅重新运行我的应用程序窗口的键盘 ID。我也尝试了 GetKeyboardLayout 但不幸的是它返回了 HKL(它接受其他窗口的 hwnd)。

或者,如果有一种方法可以将 HKL 转换为 KLID,那也很好,但我怀疑是否存在这样的事情。

那么,我怎样才能实现这一目标呢?我希望能够使用获得的KLID作为LoadKeyboardLayout函数的参数。

c# windows keyboard winapi unmanaged

3
推荐指数
1
解决办法
3901
查看次数

如何在 GNOME 中获取活动窗口的监视器?

我对 GNOME 扩展开发非常陌生,并且由于严重缺乏 API 文档(或者可能我的互联网受到秘密审查),我很难使用它。我首先修改现有的扩展,以便更容易地绕过它。

问题是,我可以使用 获取活动窗口global.display.focus_window,还可以使用 获取连接到计算机的监视器列表Main.layoutManager.monitors。现在,我想做的是找出获得的窗口位于哪个显示器上(这样我就可以将顶部面板移动到该显示器,因为这可能意味着我目前正在该显示器上工作)。我尝试了各种方法,例如 .screen、.monitor 等,但没有成功。我对此没有 IntelliSense 完成,我试图猜测成员可能是什么,因为我似乎找不到任何相关文档。

我很欣赏 GNOME 比我以前使用的(Unity,根本不提供任何定制)更具可定制性,但我不知道如何使用它,而且资源也很稀缺。我尝试查看源代码,但我不熟悉它的组织方式,并且找不到声明我需要的成员(如果存在)的相关代码部分。

我正在编写 .js 文件,所以我想我需要一些 JavaScript 代码。

非常感谢。

javascript ubuntu gnome gnome-3 gnome-shell-extensions

1
推荐指数
1
解决办法
2425
查看次数

获取 Scintilla.NET 组件中的可见线

如何获取 C# 中 Scintilla 组件的第一个可见(顶部)和最后一个可见(底部)行号?例如,如果我滚动文本,我可以看到第 5-41 行(没有折叠,它是组件当前显示的行数;其余的,您必须滚动到它们),如何我可以通过编程获取这些数字吗?

c# api scintilla

0
推荐指数
1
解决办法
2238
查看次数