Tag: winforms

我们可以向ServicePointManager.SecurityProtocol添加四个协议吗?

我想支持从ssl3到tls 1.2的所有安全协议。 但是在网上搜索时,我发现代码为 `ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3 | SecurityProtocolType.Tls | SecurityProtocolType.Tls11;` 或者作为 ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12; 但是,我想支持所有协议。 那么,写作是不对的 ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3 | SecurityProtocolType.Tls | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12; 当我编写上面的代码时,我没有给我任何编译错误。所以,这会导致任何问题吗?

如何更改图表系列颜色

我有一个系列,用数据库中的记录填充我的图表。 显示了7条记录,但是采用了sanme颜色。 我试图改变每个酒吧颜色而没有成功 下面是我试过的线,但我给了我一个大绿条(: private void button1_Click(object sender, EventArgs e) { /*First empty the chart2 to fire the current data*/ if (cbChart.SelectedItem == null) { chart.Visible = false; chart.Controls.Clear(); } else //pnchart.Controls.Clear(); chart.Visible = true; chart.Titles.Clear(); /*Add a new title*/ Title bezeichung = new Title(“Finance” + Environment.NewLine + “(GWU)”, Docking.Top, new Font(“Yu Gothic”, 8, FontStyle.Bold), […]

自动缩放但仍处理WM_DPICHANGED

我用C#编写的非常复杂的WinForms应用程序遇到了一些问题。 我希望应用程序在更改DPI时让Windows自动缩放,但我仍然需要挂钩WM_DPICHANGED事件以缩放某些自定义绘制文本。 困境是,如果我离开应用程序DPI没有意识到WM_DPICHANGED消息永远不会在DefWndProc中被截获,并且永远无法检索到正确的DPI标度,而是以我想要的方式“自动缩放”。 但是,如果我使应用程序DPI Aware,则截获WM_DPICHANGED消息并且可以计算正确的DPI,但表单不会“自动缩放”。 正如我所说,应用程序非常复杂并且使用了大量第三方控件,因此我无法花时间在WPF中重写应用程序或尝试自行扩展应用程序。 如何让应用程序拦截WM_DPICHANGED消息,计算正确的DPI并仍然允许Windows管理表单缩放? Program.cs中: static class Program { [STAThread] static void Main() { if (Environment.OSVersion.Version.Major >= 6) { // If the line below is commented out then the app is no longer DPI aware and the // WM_DPICHANGED event will never fire in the DefWndProc of the form int retValue = […]

文本框SelectionStart,SelectionEnd和Caret(光标)位置

这可能非常简单。 我在WinForm上有一个文本框,Text =“ABCDEFGH”。 我需要选择“BCD”并将I-Beam(光标,插入符号,闪烁’|’)放在’A’和’B’之间。 设置SelectionStart = 1和SelectionLenght = 3不起作用,我无法弄明白。

C#tableLayoutPanel滚动除顶行之外的所有内容

我正在使用带有C#的winforms并查看TableLayoutPanel 是否可以在大桌子上有一个滚动条,但不能让顶行滚动? 它类似于“冻结窗格”选项在Excel中的工作方式。 我只想冻结顶行而不是别的。 另外,我的桌子足够大,我也会有一个水平滚动条。 因此,当我水平滚动时,我需要顶行和其余行同时以相同的速率移动。

如何在datagridview中停止闪烁

我正在使用datagridview通过绑定数据库来显示来自访问数据库的数据 DataGridView.DataSource = dTable; 当我通过在datagridview中滚动来向下移动光标时,当它更新时,滚动条会自动上升,并且行中的第一个单元格会突出显示。 gridview中有超过300行。如果我想查看最后一个脚本,它会自动占用我的数据,并且每隔5秒更新一次datagridview。 我不希望滚动条上升我希望我的滚动条在我更新之前放置它。 提前致谢。

应用程序中的webservice方法上的多个异步调用失败,但exception

我正在尝试创建一个连接到互联网的应用程序,并为每个操作使用web services 。就我而言,我想使用async method ,我已经使用它来获取联系人的集合。我已经意识到,当我为群体做同样的事情(意味着让群体异步)时,我在呼叫中有错误,但是当使用正常呼叫时,我没有。所以我在网上进行了一些研究并发现了很多人有同样的问题。 他们中的一些人被要求使用WCF (我不知道杰克)。我想知道是否还有其他方法可以解决这个问题。 如果没有,有人可以指向我在线的可靠资源,并帮助我度过难关吗? 感谢阅读和帮助这里是我的代码: public partial class main : Window { //… private static vmcSession session; private MyService service = new MyService(); private contactInfo[] loadedcontact; //…. public main() { InitializeComponent(); //service.addContactCompleted +=new addContactCompletedEventHandler(addContactCompleted); service.getContactsCompleted += new getContactsCompletedEventHandler(getContactsCompleted); service.getGroupsCompleted += new getGroupsCompletedEventHandler(getGroupsCompleted); fillContents(); } private void getGroupsCompleted(object sender, getGroupsCompletedEventArgs e) { […]

Datagridview FirstDisplayedScrollingRowIndex不在网格底部工作

为了滚动数据网格,我使用以下代码: dataGridView1.FirstDisplayedScrollingRowIndex = currentRowIndexInGridView; dataGridView1.Update(); 这适用于不在网格底部的行。 如果我将它用于底行,那么当我在调试期间检查它时,setter不会将它设置为我想要的值。 例如,我设置了FirstDisplayedScrollingRowIndex = 103,但在赋值后,FirstDisplayedScrollingRowIndex的值为90,因此所需的行不可见。 从某一点开始它停止滚动,我看不到最后5行。 如果我要添加新行并将它们设置为显示,它会滚动一个,但我再也看不到最后5行了。 我认为它与事实有关,我的一些行有不同的高度和一些内部的DisplayedRowCount情绪失败??? 有没有办法检测这种情况,然后强制滚动到数据网格的底部? 编辑: FirstDisplayedScrollingRowIndex setter的重要部分在Reflector中如下所示: if (value > this.displayedBandsInfo.FirstDisplayedScrollingRow) { int rows = this.Rows.GetRowCount(DataGridViewElementStates.Visible, this.displayedBandsInfo.FirstDisplayedScrollingRow, value); this.ScrollRowsByCount(rows, (rows > 1) ? ScrollEventType.LargeIncrement : ScrollEventType.SmallIncrement); } else { this.ScrollRowIntoView(-1, value, true, false); } 计算rows变量时似乎有错误。

为什么按Ctrl +“+”会在TextBox中产生哔声?

我正在使用C#和Windows Forms并希望使用Ctrl+”Oemplus”作为我的应用程序的functionkey 。 我使用German keyboard ,这个键位于字母P右侧的2个键(即“+”)。 每当我与Ctrl结合使用此键并且焦点位于TextBox我会发出一声哔哔声。 当我切换到US keyboard布局(仍使用我的German keyboard )时也会发生这种情况。 这是] key 。 在Internet Explorers地址栏中按此键时也会发生同样的情况。 我的问题是: 为什么此组合键会在TextBox中产生哔声。 我怎能避免发出哔哔声? 感谢您为此付出的任何努力。 更新: 我在美国/泰国键盘上试了一下,也发出了哔哔声。 无论我使用什么逻辑键盘布局(德语,美国,泰国),都会发生这种情况。 蜂鸣声也发生在地址栏中的Windows资源管理器中,但不会出现在搜索框中。

如何在文本框中将删除的字符替换为0

在winforms中,如何用零替换已删除的字符。 例如12.45在文本框中。 如果我们在小数点后删除,它应该变成12.00。 如果在前面删除,同样的方式,000.45。 默认值应为000.00。