Tag: winforms

如何防止RichTextBox刷新其显示?

我有一个RichTextBox,我需要经常更新Text属性,但是当我这样做时,RichTextBox会因为在整个方法调用中刷新所有内容而“眨眼”。 我希望找到一种简单的方法来暂时禁止屏幕刷新,直到我的方法完成,但我在网上找到的唯一的事情就是覆盖WndProc方法。 我采用了这种方法,但有一些困难和副作用,它也使调试更加困难。 看起来似乎必须有更好的方法来做到这一点。 有人能指出我更好的解决方案吗?

如何检查form2上的复选框时Form1 label.text更改?

我对c#很新,我正在用2种不同的forms尝试我的第一次实验。 我想这样做,所以你在Form1上有一个label1和一个button1,在Form2上有一个checkbox1。 Form1上的button1打开Form2,一旦您检查Form2上的checkbox1,label1中的文本将更改。 我认为这必须使用事件来完成,但事件是迄今为止唯一让我真正迷惑的事情,所以我想这个问题实质上更多的是关于事件的使用。 如果我在MSDN和其他网站上查找,我也会发现非常混乱。 非常感谢帮助,这让我觉得非常愚蠢。

在.NET Winforms应用程序中保存设置

可能重复: 存储.NET应用程序的用户设置的最佳方法是什么? 我已经找到了很多关于如何从Winforms应用程序保存应用程序设置(每个用户)的非常不同的示例。 我想在c#中这样做的正确方法非常简单,我希望有人可以启发我吗?

条件DataGridView格式

我有一个DataGridView。 我将其.DataSource prop设置为我自己的对象的BindingList : BindingList 然后我为它创建了一些列.. DataGridViewTextBoxColumn descColumn = new DataGridViewTextBoxColumn(); descColumn.DataPropertyName = “Description”; descColumn.HeaderText = “Description”; descColumn.Width = 300; DataGridViewTextBoxColumn gameIDColumn = new DataGridViewTextBoxColumn(); gameIDColumn.DataPropertyName = “GameID”; gameIDColumn.HeaderText = “Game ID”; gameIDColumn.Width = 60; dataGrid.Columns.Add(descColumn); dataGrid.Columns.Add(gameIDColumn); 我的问题是..我想根据我BindingList的另一个字段中的数据为其中一列GREEN着色。 我怎样才能做到这一点? 我真的不必显示这个字段,我只想对其中的数据进行操作。 在我的例子中,IChessItem的一个字段显示记录是否是新的,我想为datagridview中的其他字段着色以反映这一点。

在WebBrowser中使用CookieContainer中的cookie

有没有办法可以实际使用cookie容器中的cookie(以前从WebRequest中获取)并在WebBrowser控件中使用它们? 如果是这样,我该怎么做? 这适用于C#中的Winforms应用程序。

如何从C#中的类访问表单方法和控件?

我正在开发一个C#程序,现在我有一个Form和几个类。 我希望能够从我的类中访问一些Form控件(例如TextBox )。 当我尝试从我的类更改TextBox中的TextBox ,我收到以下错误: 非静态字段,方法或属性’Project.Form1.txtLog’需要对象引用 如何从我的一个类中访问Form1.cs方法和控件?

C# – 如何使两个表单相互引用

我在MS Visual C#中编写了一个WindowsForms应用程序,我需要两种forms才能相互引用。 在我测试时,我在Form1上创建了两个按钮 – 一个按钮显示Form2,另一个按钮隐藏它(代码在下面)。 我想对Form2做同样的事情 – 创建隐藏或显示Form1的两个按钮。 我使用了与Form1相同的方法,但是当我编译应用程序时,似乎陷入无限循环并且我收到了StackOverflow消息。 如何更改代码以使两个表单能够互相引用? Form1代码: namespace WindowsFormsApplication1 { public partial class Form1 : Form { Form2 frm2; public Form1() { InitializeComponent(); frm2 = new Form2(); } private void button1_Click(object sender, EventArgs e) { frm2.Visible = false; } private void button2_Click(object sender, EventArgs e) { frm2.Visible = true; } […]

绘制多个手绘折线或曲线图 – 添加撤消function

我正在尝试使用撤消和重做function创建一个简单的绘图应用程序。 我假设您可以将您绘制的内容添加到列表中并调用列表来绘制所有内容。 然后撤消应该只删除最后添加的项目并重新绘制所有内容。 问题是,如何将我绘制的内容添加到列表中并使用该列表进行撤消? 我正在使用位图重绘方法。 这是我画的方式: Point start, end; bool painting; private List myPoints = new List(); private void pnlMain_MouseDown(object sender, MouseEventArgs e) { start = e.Location; painting = true; } private void pnlMain_MouseUp(object sender, MouseEventArgs e) { painting = false; } private void pnlMain_MouseMove(object sender, MouseEventArgs e) { if (painting == true) { end […]

自定义OpenFileDialog

我正在使用C#中的winforms应用程序。 我想要实现的是从用户获取我正在使用以下代码的文件: OpenFileDialog dlg = new OpenFileDialog(); if (dlg.ShowDialog() == DialogResult.OK) { string sFileName = dlg.FileName; //my code goes here } 现在,一切正常,但我想在同一个对话框中放入3个单选按钮,这意味着我现在可以从这个对话框中获取两个东西 string sFileName = dlg.FileName; //same as in case of traditional dialog box //some thing like this which tells which radio button is selected: dlg.rbTypes.Selected 我该如何实现这一目标?

将计时器添加到Windows窗体应用程序

我想添加一个计时器而不是倒计时,它会在表单加载时自动启动。 开始时间应为45分钟,一旦结束,即达到0分钟,表格应终止并显示一条消息。 我怎样才能做到这一点? 语言:最好是C#。