我一直在学习C#2个月.之前,我学习了PHP,看到它有一个数组,索引是一个字符串,如下所示:
$John["age"] = 21;
$John["location"] = "Vietnam";
Run Code Online (Sandbox Code Playgroud)
记住我们设置为数组元素的内容非常有用.我试图找出C#是否支持该数组类型,但我还没有看到任何答案.
C#有这样的数组吗?如果有,我该如何创建它?
可能重复:
启动时单个表单隐藏
我希望在运行后隐藏我的WinForm(不要最小化).
我用了:
this.Load += new System.EventHandler(this.Form1_Load);
private void Form1_Load(object sender, EventArgs e)
{
Hide();
}
Run Code Online (Sandbox Code Playgroud)
但它不起作用.你能帮帮我吗?
我有一个控制台应用程序,构建为 Windows应用程序,作为后台进程运行(我称之为App 1).
当我运行其他应用程序时,我发送消息App 1,然后它处理消息.
我希望阻止App 1退出ultil我按下热键.
你能帮我防止App 1自动退出吗?非常感谢你!
我希望在安装后第一次运行时显示Set program associationswindows [编辑:我的程序],就像Chrome一样,如下所示:

它有:
如何通过c#(或win32 c ++)来做到这一点?
编辑
我读了一些关于修改注册表的文章(通过.reg文件或修改注册表的代码工作)来设置默认程序.它似乎只适用于Windows XP/7或更低版本,而不是8/8.1,因为Microsoft使用哈希来保护这些注册表.
我添加了一个到RichEdit的链接,使用CFM_LINK/CHARFORMAT2结构。但我不知道如何消除下划线效果。我试过:
SendMessage(richEditHWND, EM_AUTOURLDETECT, FALSE, NULL);
SendMessage(richEditHWND, EM_SETEDITSTYLEEX, 0, SES_EX_HANDLEFRIENDLYURL);
CHARFORMAT2 cf2;
memset(&cf2, 0, sizeof(CHARFORMAT2));
cf2.dwMask = CFM_LINK| CFM_UNDERLINE | CFM_COLOR | CFM_LINKPROTECTED;
cf2.dwEffects = CFE_LINK| CFE_UNDERLINE | CFE_LINKPROTECTED;
cf2.crTextColor = RGB(255, 0, 0);
cf2.bUnderlineType = CFU_UNDERLINENONE;
SendMessage(richEditHWND, EM_SETCHARFORMAT, SCF_SELECTION, (LPARAM)&cf2);
Run Code Online (Sandbox Code Playgroud)
但这不起作用。
另一种方法是将下划线颜色设置为白色,即RichEdit的背景颜色,但这是一种hacky方法,使像q,j,...这样的字符被分割,在选择文本时也显示该线。
那么这样做的正确方法是什么?
注意:我正在使用RICHEDIT50W类。
我有一个像下面的ListView。第2列是可以重命名项目的TextBox。
当我专注于TextBox时,我也希望包含该TextBox的列表视图行也被选中。我怎样才能做到这一点?谢谢!
<ListView x:Name="lb" ItemsSource="{Binding}">
<ListView.View>
<GridView>
<GridViewColumn Width="25">
<GridViewColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding Path=Next}"/>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
<GridViewColumn Width="Auto">
<GridViewColumn.CellTemplate>
<DataTemplate>
<TextBox Text="{Binding Path=Path}"/>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
</GridView>
</ListView.View>
</ListView>
Run Code Online (Sandbox Code Playgroud) 我有一个没有标题栏的表单,但我希望我的表单仍然有边框,如下所示:

目前,我使用文本框然后将其发送回来,我的表格有1px边框.我构建了一个小应用程序,所以我不想写长代码来绘制边框.有没有简单的方法来做到这一点:我希望我的表格有简单的黑色-3px边框,但没有标题栏???
语言:C#
你能帮助我如何使用System.Runtime.Serialization.Json(不Json.NET)获取这个tring to array中每本书的信息:
{
"books":
[
{"name":"Book 1","orig":"Author 1","date":2009,"lang":"en"},
{"name":"Book 2","orig":"Author 2","date":2012,"lang":"fr"}
],
"src":"lib",
"id":212
}
Run Code Online (Sandbox Code Playgroud) 我注册了热键:Ctrl+ Space.热键消息发送至:
private void Hotkey_press()
{
... // I want to show tooltip "Hello" at current mouse location.
}
Run Code Online (Sandbox Code Playgroud)
有没有办法显示这个工具提示,即使鼠标没有指向任何控件,它是在我的Window.Form1之外?
编辑:该工具提示甚至可以显示丢失焦点或隐藏的表单
今天,我发现一个有趣的plunker,在谷歌搜索很多没有找到任何东西,希望在这里,我会找到我的答案.我想要一个那个plunker的副本.我不想用copy and paste技巧.是否有任何方法可以获得完善的plunk副本?我如何将整个现有的plunker复制到我的新plunker?
i did use `Fork` option of the plunker but not satisfied.
Run Code Online (Sandbox Code Playgroud)
任何帮助,将不胜感激.