草庐IT

winforms-interop

全部标签

c# - 将 WinForm 放在右下角

如何在使用C#加载表单时将其放置在屏幕的右下角? 最佳答案 尝试一下RectangleworkingArea=Screen.GetWorkingArea(this);this.Location=newPoint(workingArea.Right-Size.Width,workingArea.Bottom-Size.Height);希望它对你有用。 关于c#-将WinForm放在右下角,我们在StackOverflow上找到一个类似的问题: https://s

c# - 将 WinForm 放在右下角

如何在使用C#加载表单时将其放置在屏幕的右下角? 最佳答案 尝试一下RectangleworkingArea=Screen.GetWorkingArea(this);this.Location=newPoint(workingArea.Right-Size.Width,workingArea.Bottom-Size.Height);希望它对你有用。 关于c#-将WinForm放在右下角,我们在StackOverflow上找到一个类似的问题: https://s

C# WinForms : How to set Main function STAThreadAttribute

在后台线程中调用saveFileDialog.ShowDialog()时出现以下异常:Currentthreadmustbesettosinglethreadapartment(STA)modebeforeOLEcallscanbemade.EnsurethatyourMainfunctionhasSTAThreadAttributemarkedonit.根据this:Tofixtheproblem,insertthestatement:Threading.Thread.CurrentThread.ApartmentState=Threading.ApartmentState.STA;

C# WinForms : How to set Main function STAThreadAttribute

在后台线程中调用saveFileDialog.ShowDialog()时出现以下异常:Currentthreadmustbesettosinglethreadapartment(STA)modebeforeOLEcallscanbemade.EnsurethatyourMainfunctionhasSTAThreadAttributemarkedonit.根据this:Tofixtheproblem,insertthestatement:Threading.Thread.CurrentThread.ApartmentState=Threading.ApartmentState.STA;

c# - Winforms:SuspendLayout/ResumeLayout 还不够吗?

我有一个包含一些“自定义控件”的库。本质上,我们有自己的按钮、圆角面板和一些带有一些自定义油漆的组框。尽管OnPaint方法中有“数学”,但控件非常标准。大多数时候,我们所做的只是绘制圆角并向背景添加渐变。我们使用GDI+来做这一切。这些控件没问题(我们的客户认为它们非常漂亮),但是尽管有DoubleBuffer,您还是会看到一些重绘,尤其是当同一个表单上有20++个按钮(例如)时。在加载表单时,您会看到按钮在绘制……这很烦人。我很确定我们的按钮不是地球上最快的东西,但我的问题是:如果双缓冲区“打开”,所有重绘不应该在后台发生并且Windows子系统应该“立即”显示结果“?另一方面,如

c# - Winforms:SuspendLayout/ResumeLayout 还不够吗?

我有一个包含一些“自定义控件”的库。本质上,我们有自己的按钮、圆角面板和一些带有一些自定义油漆的组框。尽管OnPaint方法中有“数学”,但控件非常标准。大多数时候,我们所做的只是绘制圆角并向背景添加渐变。我们使用GDI+来做这一切。这些控件没问题(我们的客户认为它们非常漂亮),但是尽管有DoubleBuffer,您还是会看到一些重绘,尤其是当同一个表单上有20++个按钮(例如)时。在加载表单时,您会看到按钮在绘制……这很烦人。我很确定我们的按钮不是地球上最快的东西,但我的问题是:如果双缓冲区“打开”,所有重绘不应该在后台发生并且Windows子系统应该“立即”显示结果“?另一方面,如

c# - 如何在 winforms 应用程序中设置数据网格滚动条的位置?

在我的C#winforms应用程序中,我有一个数据网格。当数据网格重新加载时,我想将滚动条设置回用户设置的位置。我该怎么做?编辑:我使用的是旧的winformsDataGrid控件,而不是较新的DataGridView 最佳答案 您实际上并不直接与滚动条交互,而是设置了FirstDisplayedScrollingRowIndex。因此,在重新加载之前,捕获该索引,一旦重新加载,将其重置为该索引。编辑评论中的要点。如果您使用的是DataGridView,那么这将起作用。如果您使用的是旧的DataGrid,那么最简单的方法就是继承它。

c# - 如何在 winforms 应用程序中设置数据网格滚动条的位置?

在我的C#winforms应用程序中,我有一个数据网格。当数据网格重新加载时,我想将滚动条设置回用户设置的位置。我该怎么做?编辑:我使用的是旧的winformsDataGrid控件,而不是较新的DataGridView 最佳答案 您实际上并不直接与滚动条交互,而是设置了FirstDisplayedScrollingRowIndex。因此,在重新加载之前,捕获该索引,一旦重新加载,将其重置为该索引。编辑评论中的要点。如果您使用的是DataGridView,那么这将起作用。如果您使用的是旧的DataGrid,那么最简单的方法就是继承它。

c# winform播放MP4视频

1、在所有windows窗体中添加windowsmediaplayer控件  2、拖入windowsmediaplayer控件,编写代码usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Text;usingSystem.Linq;usingSystem.Windows.Forms;usingDevExpress.XtraEditors;namespaceDXProject.Core.page{publicp

C# 在 winforms 上验证文本框的输入

我想在将文本保存到数据库之前检查用户在文本框中写的内容。做这个的最好方式是什么?我想我总能写一些ifs或一些try-catchblock,但我想知道是否有更好的方法。我读过一些关于验证事件的内容,但我不确定如何使用它们。 最佳答案 描述验证文本框的方法有很多种。您可以在每次击键时、稍后或在Validating事件中执行此操作。如果您的TextBox失去焦点,则会触发Validating事件。例如,当用户单击另一个控件时。如果您设置e.Cancel=true,TextBox不会失去焦点。MSDN-Control.ValidatingE