在WinForm中,我有一个组合框,DropDownStyle设置为DropDownList(因此无法输入文本).在属性窗口中,有Items属性,它是一个字符串集合.我输入了所有的价值观.
但是现在,我想默认设置其中一个值(而不是在运行时使用空条目).我知道如何通过编码来做到这一点,但我很确定(该死的记忆)可以通过在行前面添加一个特殊的符号来设置字符串集合中的一个值作为默认值.
有人知道那个符号吗?或者我的记忆在玩耍技巧,而且不可能通过设计师来做到这一点?
我有很多单选按钮,所以我最终得到的代码看起来像这样
if (rbFrenchImp.Checked)
{
}
else if (rbFrenchMet.Checked)
{
}
else if (rbEnglishImp.Checked)
{
}
else if (rbFrenchEuro.Checked)
{
}
//etc...
Run Code Online (Sandbox Code Playgroud)
所以我想知道,是否可以使用带单选按钮的开关盒?如果有,怎么样?
public string[] tName = new string[]{"Whatever","Doesntmatter"};
string vBob = "Something";
string[] tVars = new string[]{"tName[0]","vBob","tName[1]"};
Run Code Online (Sandbox Code Playgroud)
现在,我想更改tName [0]的值,但它不能用于:
for(int i = 0; i < tVars.Lenght;++i)
{
this.GetType().GetField("tVars[0]").SetValue(this, ValuesThatComeFromSomewhereElse[i]));
}
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点?
编辑:更改代码以更准确地显示我想要做的事情.
//mDIco is a Dictionnary with string as keys and homemade class (cAsso) as values
IEnumerator iterdico = mDico.GetEnumerator();
iterdico.Reset();
while (iterdico.MoveNext())
{
var asso = iterdico.Current as cAsso;
if (asso != null)
{
//Code
}
}
Run Code Online (Sandbox Code Playgroud)
我认为这会起作用,但显然它没有.那么我怎么做才能访问包含在我的词典值中的类?
我正在使用C#中需要向C++应用程序发送消息的应用程序.
我进口了
[DllImport("user32.dll")]
public static extern IntPtr SendMessage(
int hWnd, // handle to destination window
uint Msg, // message
IntPtr wParam, // first message parameter
IntPtr lParam // second message parameter
);
Run Code Online (Sandbox Code Playgroud)
但现在,我的问题是我需要将字符串传递给wParam和lParam.我尝试了不安全的代码,但似乎字符串不像其他变量一样工作.我怎样才能做到这一点?谢谢.
我用Wake-on-Lan重新启动一台远程计算机,我想知道是否有办法知道计算机在登录屏幕上闲置(所以我可以开始做需要完成的事情).
c# ×6
string ×2
arrays ×1
combobox ×1
default ×1
dictionary ×1
gettype ×1
long-integer ×1
pointers ×1
position ×1
reboot ×1
wake-on-lan ×1
winforms ×1
wmi ×1