void InitServerTab() { // serverinfo.json 파일 로드 FileInfo fi = new FileInfo(ServerInfo.PATH); if (fi.Exists) { string json = FileContoller.read(ServerInfo.PATH); try { ServerInfo.jobj_root = JObject.Parse(json); ServerPanel panel_server = ServerInfo.ConvertFromJson(ServerInfo.jobj_root); grid_server.Children.Add(panel_server); } catch (Exception e) { Console.WriteLine(e.Message); } } if (ServerMenuButton.group.Count > 0) { ServerMenuButton.group[0].IsChecked = true; } }
void initServerTab() { // UI 초기화 ServerGrid servergrid = new ServerGrid(); grid_server.Children.Add(servergrid); ServerMenuButton[] smbtn = new ServerMenuButton[ServerInfo.CATEGORIES.Length]; for (int i = 0; i < ServerInfo.CATEGORIES.Length; i++) { ServerInfo.jobj_root.Add(new JProperty(ServerInfo.CATEGORIES[i], new JObject())); smbtn[i] = new ServerMenuButton(ServerInfo.CATEGORIES[i]); servergrid.Children.Add(smbtn[i]); ServerGrid.current.submenu.Children.Add(smbtn[i].child); } smbtn[0].IsChecked = true; CommandView commandView; commandView = new CommandView(); grid_second.Children.Add(commandView); // serverinfo.json 파일 로드 FileInfo fi = new FileInfo(ServerInfo.PATH); if (fi.Exists) { string json = FileContoller.read(ServerInfo.PATH); try { ServerInfo.jobj_root = JObject.Parse(json); List <ServerInfo>[] serverinfos = ServerInfo.ConvertFromJson(ServerInfo.jobj_root); for (int i = 0; i < ServerInfo.CATEGORIES.Length; i++) { for (int j = 0; j < serverinfos[i].Count; j++) { smbtn[i].child.Items.Add(new ServerInfoTextBlock(serverinfos[i][j])); } } //for(int i = 0; i < ServerInfo.CATEGORIES.Length; i++) //{ // JObject jobj = ServerInfo.jobj_root[ServerInfo.CATEGORIES[i]] as JObject; // ServerInfo si; // foreach(var v in jobj.Properties()) // { // si = ServerInfo.ConvertFromJson(v); // smbtn[i].child.Items.Add(new ServerInfoTextBlock(si)); // } //} } catch (Exception e) { Console.WriteLine(e.Message); } } }
public static List <ServerInfo>[] ConvertFromJson(JObject jobj_root) { if (jobj_root == null) { return(null); } try { List <ServerInfo>[] serverinfos = new List <ServerInfo> [ServerInfo.CATEGORIES.Length]; for (int i = 0; i < ServerInfo.CATEGORIES.Length; i++) { serverinfos[i] = new List <ServerInfo>(); } Type type = typeof(ServerInfo); for (int idx_cate = 0; idx_cate < ServerInfo.CATEGORIES.Length; idx_cate++) { JObject jobj_serverinfos = jobj_root[ServerInfo.CATEGORIES[idx_cate]] as JObject; if (jobj_serverinfos == null) { return(null); } foreach (var v in jobj_serverinfos.Properties()) { ServerInfo serverinfo = ServerInfo.ConvertFromJson(v); serverinfos[idx_cate].Add(serverinfo); } } return(serverinfos); } catch (Exception e) { Console.WriteLine(e.Message); } return(null); }
public static ServerPanel ConvertFromJson(JObject jobj_root) { if (jobj_root == null) { return(null); } ServerPanel servergrid = new ServerPanel(); try { foreach (var v in jobj_root.Properties()) { JObject jobj_server_menu = v.Value as JObject; if (jobj_server_menu == null) { continue; } ServerMenuButton smbtn = new ServerMenuButton(v.Name); servergrid.Children.Add(smbtn); ServerPanel.SubPanel.Children.Add(smbtn.child); foreach (var jprop_server_info in jobj_server_menu.Properties()) { ServerInfo serverinfo = ServerInfo.ConvertFromJson(jprop_server_info); smbtn.child.Items.Add(new ServerInfoTextBlock(serverinfo)); } } return(servergrid); } catch (Exception e) { Console.WriteLine(e.Message); } return(null); }