【C#】编写一个游戏公告栏

【C#】编写一个游戏公告栏

安装JSON.NET

JSON算是网络中比较常用的数据交换文件了,易于阅读、编写。这里我们就用JSON为存储地址信息和公告信息。

img

在你创建的项目右键管理nuget,安装JSOM.NET,耐心等待安装完成。

代码编写

JSON文件格式
1
2
3
4
5
6
7
8
9
10
11
12
{
"data": [
{
"text": "公告测试1",
"url": "http://www.google.com"
},
{
"text": "公告测试2",
"url": "http://www.baidu.com"
}
]
}
一段简易的代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
List<string> list_url = new List<string>();//初始化一个String列表用于存放读取到的Url地址。
private void Window_Loaded(object sender, RoutedEventArgs e)
{
TextBlock[] blocks = new TextBlock[2];//动态控件数组,便于后面for赋值。
blocks[0] = t1; blocks[1] = t2;
string str_json = GetJson.GetJsonStr("testjson.json");//读取json文件。
DataSet dataSet = JsonConvert.DeserializeObject<DataSet>(str_json);//利用Json.net反序列化Json
DataTable dataTable = dataSet.Tables["data"];
for(int x= 0; x <= 1; x++)
{
blocks[x].Text = dataTable.Rows[x]["text"].ToString();//为控件Text赋值。
list_url.Add(dataTable.Rows[x]["url"].ToString());//将读取到的Url地址存入列表。
}
}
private void T1_PreviewMouseDown(object sender, MouseButtonEventArgs e)
{
System.Diagnostics.Process.Start(list_url[0]);
}
private void T2_PreviewMouseDown(object sender, MouseButtonEventArgs e)
{
System.Diagnostics.Process.Start(list_url[1]);//打开Url地址。
}
GetJsonStr.cs
1
2
3
4
5
6
7
8
9
10
11
public static string GetJsonStr(string fileName)
{
string jsonStr = "";
StreamReader sr = new StreamReader(fileName, Encoding.Default);
string line;
while ((line = sr.ReadLine()) != null)
{
jsonStr += line.ToString();
}
return jsonStr;
}

当然这只是一段最简单实现功能的代码。****

注 为了避免出现网络问题而造成的UI线程堵塞,你可能需要利用try。

预览图

img

# C#, WPF

评论

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×