Tag: winforms

在datagridview列中替换true / false

我有一个datagridview,我填写如下: var q= repository.GetStudents();// dataGridView1.DataSource = null; dataGridView1.Columns.Clear(); dataGridView1.DataSource = q; dataGridView1.Columns.RemoveAt(1); //Remove IsActive //Cause I want to have my own implementation dataGridView1.Columns[0].DataPropertyName = “StudentID”; dataGridView1.Columns[0].HeaderText = “Studunet ID”; dataGridView1.Columns[1].DataPropertyName = “IsActive”; dataGridView1.Columns[1].HeaderText = “Status”; “IsActive”属性是布尔类型。 当显示“IsActive”单元格时,它显示true / false。 我想用我自己的自定义值替换它。 我读了这个post,但我无法解决我的问题。

使图表图例代表两种颜色

我在我的应用程序中创建了一个柱形图,如下所示: 如您所见,正值为绿色,负值为红色。 我需要在传奇中代表这一点。 我只是不知道如何。 我已经尝试过的: 我将CustomItems添加到Legend 。 这是代码: Legend currentLegend = chart.Legends.FindByName(chart.Series[series].Legend); if (currentLegend != null) { currentLegend.LegendStyle = LegendStyle.Table; LegendItem li = new LegendItem(); li.Name = series; li.Color = Color.Red; li.BorderColor = Color.Transparent; currentLegend.CustomItems.Add(li); } 这导致以下表示: 我可以忍受。 但是,只要我在图表中添加更多系列,元素的顺序就会被破坏。 这是一个例子: 我想有两个选项之一: 保持正面和负面颜色 或者更好的解决方案可能是在图例中只有一个双色的瓷砖。 像这样的东西: 你能帮我解决这个问题吗? 提前谢谢了!

使用Web响应加载Web浏览器

我正在创建在线帐户的应用程序(假设Gmail)当用户运行应用程序时,我将WebBrowser控件导航到Url.User填写注册表并完成注册。 它在这里工作正常。 现在,用户希望使用代理来访问该站点。 我希望用户以另一种forms设置代理,当他运行应用程序时,他的请求由该代理自动处理。 一个解决方案是我首先导航到代理,然后用户进入他的网站,然后浏览该代理服务器。 但我希望该用户看不到代理服务器网页,只看到通过代理访问的欲望页面。 我在一篇post中读到了使用WebRequest类导航到网站并设置我的代理 请求代理,然后加载WebBrowser与此响应。 如何设置WebBrowser代理如何使用响应加载Webbrowser控件? 这会按预期工作吗?

以编程方式删除数据网格视图中的行标题

我有一个datagrid视图,我想删除所有行的行标题… 我试图删除圆形部分,如下图所示(行标题) 为此,我已经编写了下面的代码……但它并没有开始…… private void dgvProducts_RowPrePaint(object sender, DataGridViewRowPrePaintEventArgs e) { e.PaintCells(e.ClipBounds, DataGridViewPaintParts.All); e.PaintHeader(DataGridViewPaintParts.All | DataGridViewPaintParts.Border | DataGridViewPaintParts.None | DataGridViewPaintParts.SelectionBackground | DataGridViewPaintParts.ContentBackground); e.Handled = true; } 任何请给出任何示例代码删除数据网格视图中的行标题….. 提前谢谢了…..

C#如何更改标签的字体

带有标签和“选项”按钮的表单。 通过单击按钮,将打开一个新表单,其中包含2个单选按钮’Font1’和’Font2’,以及两个按钮’Apply’和’Cancel’。 选择其中一个单选按钮并单击“应用”后,将使第一个表单上的标签更改字体。 问题是如何更改字体,如说从Tahoma到Arial或标签的任何其他字体。 应用按钮的选项表单代码,如果单击该按钮将返回dialogresult.ok == true并更改第一个表单上的标签字体: private void btnApply_Click(object sender, EventArgs e) { if (radioFont1.Checked) { mainForm.lblName.Font.Name = “Arial”; ‘wrong attempt } this.DialogResult = DialogResult.OK; } 在第一个表格上声明标签,以便第二个表格可见: public static Label lblName = new Label(); … private void mainForm_Load(object sender, EventArgs e) { lblName = lblBarName; }

加载表单而不显示它

简短版本:我想触发Form_Load()事件而不使表单可见。 这不起作用,因为Show()忽略Visible属性的当前值: tasksForm.Visible = false; tasksForm.Show(); 长版本:我有一个WinForms应用程序有两种forms:main和tasks。 始终显示主窗体。 用户可以单击按钮打开任务表单,也可以单击某些直接运行任务的按钮而无需打开任务表单。 当用户要求直接运行任务时,我想在任务表单上调用一些公共方法而不显示它。 不幸的是,任务逻辑依赖于Form_Load()事件中发生的事情。 我能找到触发Form_Load()的唯一方法是调用Show()。 我能做的最好的事情是在最小化状态下显示表单: tasksForm.WindowState = FormWindowState.Minimized; tasksForm.Show(); 我认为最干净的解决方案是将任务逻辑从任务表单中拉出来并转换为控制器类。 然后我可以从主窗体和任务窗体中使用该类,只在我需要为用户显示时加载任务窗体。 但是,如果加载表单而不显示它是一件容易的事情,那将是一个较小的变化。

使用LINQ查找Winforms的控件?

我试图通过名称找到一种优雅的方式来获取Windows窗体表单上的控件。 例如: MyForm.GetControl “MyTextBox” … 但这必须确保它递归地遍历所有控件。 使用LINQ实现这一点的最优雅方法是什么?

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

我有一个设置项目的小应用程序。 如果我创建了一个主输出的快捷方式,那么这将获得一个标准的Win7图标,而不是我的exe的应用程序图标中指定的图标? 什么是确保我的桌面快捷方式图标与我的exe图标相同的最佳方法? 例如,如果我更改了exe的图标,那么我也希望设置图标也能改变。

如何从父窗体调用userform中的方法?

学习C#: 我有结构 form1 (splitcontainer) userformLeft (button + sub-panel) userformDisplay (loaded into panel in userformLeft) userformRight 我想从form1(form1中的计时器)执行userformDisplay中的方法。 反过来说,让我说我有公共属性form1.mainTimer,我可以从userFormDisplay调用它 myLong = this.parent.parent.mainTimer; 或类似的。

如何从ClickOnce应用程序获取命令行?

在发布之前,我去了Project – > Properties – > Options – > File Associations,并添加了扩展名“.hsp”。 设置一个图标和一个ProgID(“MyCompany.Document.1”进行测试)。 我发布和安装后,我的.hsp文件有我设置的图标,所以应该正确设置文件关联,但是当我双击其中一个文件时,应用程序运行,我希望我双击的文件的名称是在命令行中。 我尝试读取传递给我的Main函数的参数,尝试了Environment.CommandLine ,并尝试了Environment.GetCommandLineArgs() ,但我发现的唯一的事情就是应用程序路径。 顺便说一下,在Main函数中创建主窗体之前,我正在进行所有这些检查,只是为了测试。 args参数为空,另外两个只包含我的应用程序路径。 这是我的Mainfunction的开始: static void Main(string[] args) { try { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application.ThreadException += new ThreadExceptionEventHandler(Application_ThreadException); MessageBox.Show(“CommandLine -> ” + Environment.CommandLine); foreach (string str in args) MessageBox.Show(“args -> ” + str); foreach (string str in Environment.GetCommandLineArgs()) MessageBox.Show(“GetCommandLineArgs -> ” […]