我在哪里可以找到描述窗口尺寸的文档,例如:
我有一个包含多个复选框的标签页的表单.
我需要遍历这些复选框以查看检查了哪些复选框.从那里,我需要获取.Tag属性,以便我可以从另一个对象添加具有该名称的属性到列表.
我的代码有问题.对于线 -
DirectCast(objCtrl, CheckBox).IsChecked
Run Code Online (Sandbox Code Playgroud)
我收到了错误
IsChecked'不是'System.Windows.Forms.CheckBox'的成员
这看起来很奇怪,因为我显然需要使用该方法来检查是否实际检查了复选框,并且文档似乎表明该方法存在.
我究竟做错了什么?谢谢.
Dim objCtrl As Control
For Each objCtrl In Me.objConfigForm.tabPageGeneral.Controls
If TypeOf objCtrl Is CheckBox AndAlso DirectCast(objCtrl, CheckBox).IsChecked Then
Dim strProp As String = DirectCast(objCtrl, CheckBox).Tag
arrGeneral.Add(objUser.strProp)
End If
Next
Run Code Online (Sandbox Code Playgroud) 这是2013年12月13日.
我有一个List <>,希望绑定到DataGridView.它有效,但今天它不起作用.
public class ExamResult
{
public string ID;
public bool Result;
public bool ReviwerResult;
public string QuestionFileName;
}
Run Code Online (Sandbox Code Playgroud)
然后创建List:
List<ExamResult> result = new List<ExamResult>();
Run Code Online (Sandbox Code Playgroud)
创建ExamResult的实例并为其成员分配值,然后将其添加到List:
//Create a Instance of ExamResult:
ExamResult examResult = new ExamResult();
//Assign Value to members:
examResult.ID="001";
examResult.Result=false;
examResult.ReviewerResult=true;
examResult.QuestionFileName = string.empty;
//Add examResult Instance to List<ExamResult>
result.Add(examResult);
Run Code Online (Sandbox Code Playgroud)
然后尝试将它绑定到我的WinForm应用程序上的DataGridView.
this.DataGridView.AutoGenerateColumns = true;
this.DataGridView.DataSource = result;
Run Code Online (Sandbox Code Playgroud)
但DataGridView不显示任何东西!
我发誓这段代码有效,现在它无法正常工作!不改变代码.
问题是什么?
我正在通过C#中的Windows窗体选择带有文件夹路径的文本文件,并收集有关每个路径的信息.此时,我可以导入文件并仅显示文本文件中的第二个路径,但没有关于该文件夹的信息.这是我的代码:
private void btnFilePath_Click(object sender, EventArgs e)
{
//creating a stream and setting its value to null
Stream myStream = null;
//allowing the user select the file by searching for it
OpenFileDialog open = new OpenFileDialog();
open.InitialDirectory = "c:\\";
open.Filter = "txt files (*.txt)|*.txt";
open.FilterIndex = 2;
open.RestoreDirectory = true;
//if statement to print the contents of the file to the text box
if (open.ShowDialog() == DialogResult.OK)
{
try
{
if ((myStream = open.OpenFile()) != null)
{
using (myStream)
{ …Run Code Online (Sandbox Code Playgroud) 我有一系列按钮,如下所示:
int x = 0, y = 0;
butt2 = new Button[100];
for (int i = 0; i < 100; i++)
{
butt2[i] = new Button();
int names = i;
butt2[i].Name = "b2" + names.ToString();
butt2[i].Location = new Point(525 + (x * 31), 70 + (y * 21));
butt2[i].Visible = true;
butt2[i].Size = new Size(30, 20);
butt2[i].Click += new EventHandler(butt2_2_Click); //problem lies here (1)
this.Controls.Add(butt2[i]);
}
private void butt2_2_Click(object sender, EventArgs e)
{
// want code here
}
Run Code Online (Sandbox Code Playgroud)
我想在点击时更改按钮的背面颜色.我想通过i …
我正在尝试创建一个窗口窗体,在事件触发时显示2秒钟,然后自动关闭.
我尝试了几种选择.这是我目前的代码:
this.aletPopup.StartPosition = FormStartPosition.CenterScreen;
this.aletPopup.Show();
Thread.Sleep(2000);
this.aletPopup.Close();
Run Code Online (Sandbox Code Playgroud)
这预先形成了我想要的动作,但是,当表单加载时,它不会加载表单上的标签或图像.相反,图像和标签变得透明的区域.我想要的输出是这样的:

我也尝试使用this.aletPopup.ShowDialog();,它显示图形.但是,使用此方法时,表单不会自动关闭.
编辑:我正在尝试使用Michael Perrenoud的解决方案.但是,我无法让表格结束.我有一个设置为2000毫秒间隔的计时器,它被初始禁用.我是否正确地覆盖了OnShown?
public AlertPopForm()
{
InitializeComponent();
}
private void closingTimer_Tick(object sender, EventArgs e)
{
closingTimer.Enabled = false;
this.Close();
}
private void AlertPopForm_OnShown(object sender, System.EventArgs e)
{
closingTimer.Enabled = true;
closingTimer.Start();
}
Run Code Online (Sandbox Code Playgroud) 我正在Winforms中创建一个Treeview,在这个TreeView中,我正在使用图像和复选框.在最终结果中,图像非常靠近它们几乎触摸的复选框.有没有办法在图像和复选框之间放置几个像素值的空白区域.如果可能的话,我想避免自定义绘画,但如果这确实是唯一的方法,你能指出我正确的方向去画画吗?
在我下载后,我尝试在左侧图像中添加几个(5)像素,但它看起来仍然很奇怪.有没有人对如何自定义绘制树有任何建议?
提前致谢.
所以,我有两种形式 - 一种是开放的,另一种基本上只是第二种形式的弹出窗口.第二个表单打开,里面有一个maskedtextbox,另外还有Save和Cancel按钮 - 我想保存更改第一个表单上的字段.
据我所知,我必须为我的弹出窗口使用第二种形式,因为我想要完成的事情并不像我可以放在MessageBox中那么简单 - 如果还有其他选项,我都是耳朵.
我一直在努力:
表格1:
public partial class Form1 : Form
{
public void ChangeLabel()
{
label1.Text = StaticVariables.labelString;
}
}
Run Code Online (Sandbox Code Playgroud)
表格2:
public partial class Form2 : Form
{
private void changeForm1_Click(object sender, EventArgs e)
{
StaticVariables.labelString = textBox.Text;
Form1 frm = new Form1();
frm.ChangeLabel();
}
}
Run Code Online (Sandbox Code Playgroud)
显然,这没有奏效.
这个问题与之前的帖子非常相似: convert-object-to-url-in-c-sharp
我试图将对象转换为URL字符串.
例如:
public class example {
public string property1;
public int property2;
public double property3;
}
Run Code Online (Sandbox Code Playgroud)
然后字符串会出来
property1 =值&property2 =值&property3 =值
理想情况下,我不想用花哨的循环和字符串操作来做到这一点.(不是懒惰,只是高效).
它适用于集合类库,最终目标是使用Win Forms应用程序,连接到不接收JSON对象的第三方网站.我想远离使用MVC框架的东西.