草庐IT

Winforms

全部标签

c# - 区分用户更改 Checkbox.Checked 值,还是以编程方式更改

我看到复选框有一个CheckedChanged事件。是否可以判断它是通过编程方式更改的,还是由用户实际选中复选框更改的?我有一个很大的网格,用户可以在其中输入过滤器,或者使用复选框作为一种提供通用过滤参数的“快速过滤器”。然后说他们去通过文本框修改过滤器,我正在检查我是否应该以编程方式(取消)检查CheckBox控件,以便它反射(reflect)文本框中的过滤器。privatevoidgenericCheckbox_CheckedChanged(objectsender,EventArgse){UpdateFilter();}privatevoidUpdateFilter(){if(g

c# - 在同一 Windows 窗体应用程序的实例之间拖放

我创建了一个小型Windows窗体测试应用程序来尝试一些拖放代码。该窗体由三个PictureBoxes组成。我的目的是从一个PictureBox中抓取一张图片,在拖动操作期间将其显示为自定义光标,然后将其拖放到另一个PictureBox目标上。从一个PictureBox到另一个PictureBox只要它们在同一个表单上就可以正常工作。如果我打开同一个应用程序的两个实例并尝试在它们之间拖/放,我会收到以下神秘错误:Thisremotingproxyhasnochannelsinkwhichmeanseithertheserverhasnoregisteredserverchannelst

c# - 如何修复 WinForms 窗体中的闪烁?

我不断地绘制框架,我需要表格不闪烁。我该如何实现?publicpartialclassForm1:Form{Image[]dude=newImage[3];staticintrenderpoint=0;intlastimage=0;publicForm1(){dude[1]=newBitmap(@"snipe1.bmp");dude[0]=newBitmap(@"snipe0.bmp");InitializeComponent();}privatevoidForm1_Shown(objectsender,EventArgse){MainLoop();}privatevoidMainLo

c# - Winforms:如何正确打开组合框?

我在winforms上有一个组合框。在Enter上,即使我打开它:cbo.DroppedDown=true;但如果我这样做,组合会立即打开和关闭。我做错了什么?我使用此事件的原因是我需要在Tab上打开组合,当用户单击上一个控件上的选项卡时,此组合会正确打开。但是,如果用户单击它打开和关闭的组合。如何正确地做到这一点?谢谢 最佳答案 我试过是这样的:privatevoidcomboBox1_enter(objectsender,EventArgse){comboBox1.DroppedDown=true;}mouseup或计时器没有变

c# - Windows.UI.Notifications 丢失

我想从thisexample创建简单的toast通知到Windows10中的操作中心.但是我在第2步遇到了问题:usingWindows.UI.Notifications;它不见了。但是我花了很多时间去寻找它并没有得到结果。我真的不知道在哪里可以找到或至少可以下载它。我尝试过的:经过长时间的搜索,我在C:\Windows\System32中找到了Windows.UI.dll,但是当我尝试将它作为引用添加到项目中时,我遇到了这个错误。即使在我尝试复制它并使其完全可访问之后,也没有任何改变我尝试重新安装.Net(我使用的是4.5.2)已安装Windows10SDK尝试使用全局导入已添加10

c# - 在 VS2010 安装项目中为快捷方式设置正确的图标

我有一个带有设置项目的小应用程序。如果我为我的主输出创建一个快捷方式,那么它会得到一个标准的Win7图标,而不是我的exe应用程序图标中指定的图标?确保我的桌面快捷方式图标与我的exe图标相同的最佳方法是什么?例如如果我更改了exe的图标,那么我希望设置图标也随之更改。 最佳答案 如果您为快捷方式设置图标,您可以将主要输出设置为源。在安装项目的文件系统编辑器中,单击快捷方式属性Pane中的“(图标)”组合框,然后单击选项“(浏览...)”,按钮“浏览...”。你会看到这个:然后添加输出并选择exe的主要输出。

c# - 如何获取 Windows 窗体在屏幕上的位置?

我正在VisualStudioC#2010中编写一个WinForms应用程序,我想找出WinForm窗口左上角的位置(窗口的起始位置)。我该怎么做? 最佳答案 如果你从表单本身访问它,那么你可以写intwindowHeight=this.Height;intwindowWidth=this.Width;获取窗口的宽度和高度。和intwindowTop=this.Top;intwindowLeft=this.Left;获取屏幕位置。否则,如果您启动表单并从另一个表单访问它intw,h,t,l;using(Formform=newFor

c# - 为什么类 "Program"声明为静态的?

当您创建一个WinForm应用程序时,您会在Program.cs文件中获得一个自动生成的Program类模板。看起来像这样:staticclassProgram{//////Themainentrypointfortheapplication.///[STAThread]staticvoidMain(){Application.EnableVisualStyles();Application.SetCompatibleTextRenderingDefault(false);Application.Run(newForm1());}}我的问题是,为什么Program类声明为static?

c# - 如何从 "Grip"回收空间

我有一个带有单个ToolStripStatusLabel、Spring=true和通知背景色的StatusStrip。问题是状态条右侧有一个丑陋的灰色方block。摆弄了一会儿后,我意识到这是尺寸控制(我设置为SizingGrip=false,GripStyle=Hidden)。然而,即使它被隐藏起来,它仍然占据着空间。我无法让状态条上的任何内容一直向右延伸。您将如何解决这个问题?请注意,我不能只设置StatusStrip的背景颜色,因为状态标签会改变颜色并具有一些褪色效果。 最佳答案 StatusStrip.Padding属性已失

c# - 如何将此 WPF 控件添加到我的 WinForm 中?

我知道我必须使用ElementHost来在WinForm中显示WPF控件,但是由于WPF控件是第三方软件,它只带有一个XML文件和一个DLL文件。控件是AvalonEdit,我将ICSharpCode.AvalonEdit.xml和ICSharpCode.AvalonEdit.dll文件添加到我的项目中,然后转到Project->AddReference并添加了DLL作为引用。现在我可以在我的代码中访问ICSharpCode命名空间,所有的类和方法都公开了,但从这一点上我不确定如何在我的WinForm中实际使用该控件。我原以为WPF控件会出现在解决方案资源管理器中,但事实并非如此。无论