public void Save(string sDirectory, EncyclopediaPartType pPart) { string sDir = Path.Combine(sDirectory, pPart.Folder); Directory.CreateDirectory(sDir); Save <EncyclopediaPartType>(sDir, "/index.json", pPart); }
/// <summary> /// Открытие краткой информациидля последующего открытия статьи /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void dataGridView1_CellMouseDoubleClick(object sender, DataGridViewCellMouseEventArgs e) { try { EncyclopediaPartType encyclopediaPartType = GetClient().GetPart(dataGridView1[0, dataGridView1.CurrentRow.Index].Value.ToString()); dataGridView2.DefaultCellStyle.Font = new Font("Microsoft Sans Serif", 10); dataGridView2.ColumnHeadersDefaultCellStyle.Font = new Font("Microsoft Sans Serif", 10); dataGridView2.DataSource = encyclopediaPartType.ArticleInfoList; dataGridView2.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells; dataGridView2.Columns["NameFileFullArticle"].DisplayIndex = 0; dataGridView2.Columns["NameShortArticle"].DisplayIndex = 1; dataGridView2.Columns["Notes"].DisplayIndex = 2; dataGridView2.Columns["Mark"].DisplayIndex = 3; dataGridView2.Columns["NameFileFullArticle"].Visible = false; dataGridView2.Columns["NameShortArticle"].HeaderText = "Название статьи"; dataGridView2.Columns["Notes"].HeaderText = "Описание"; dataGridView2.Columns["Mark"].HeaderText = "Оценка"; //очистка других полей textBox1.Text = ""; richTextBox2.Text = ""; RTBFullArticle.Clear(); pictureBox1.Image = null; dataGridView3.Rows.Clear(); dataGridView3.Columns.Clear(); } catch { MessageBox.Show("Что-то явно пошло не по плану.", "Упс...", MessageBoxButtons.OK); } }
public EncyclopediaType Load(string sDirectory) { if (sDirectory == String.Empty) { EncyclopediaType pEncyclopedia = new EncyclopediaType(); pEncyclopedia.Title = "Пословицы и поговорки"; EncyclopediaPartType pPart1 = new EncyclopediaPartType(); pPart1.Title = "О земле"; pPart1.ArticleInfoList = new EncyclopediaArticleInfoType[] { }; EncyclopediaPartType pPart2 = new EncyclopediaPartType(); pPart2.Title = "О воде"; pPart2.ArticleInfoList = new EncyclopediaArticleInfoType[] { }; pEncyclopedia.PartList = new[] { pPart1, pPart2 }; return(pEncyclopedia); } JsonSerializer pSerializer = JsonSerializer.Create(new JsonSerializerSettings() { Formatting = Formatting.Indented }); using (FileStream pF = File.Open(Path.Combine(sDirectory, RootFilename), FileMode.Open)) { using (TextReader pT = new StreamReader(pF)) { EncyclopediaType pEncyclopedia = pSerializer.Deserialize(pT, typeof(EncyclopediaType)) as EncyclopediaType; return(pEncyclopedia); } } }
/// <summary> /// Сохранить краткую статью /// </summary> /// <param name="sDirectory"></param> /// <param name="pPart"></param> public void Save(string sDirectory, EncyclopediaPartType pPart) { string sDir = Path.Combine(sDirectory, pPart.Folder); Directory.CreateDirectory(sDir); Save <EncyclopediaPartType>(sDir, RootFilename, pPart); }
/// <summary> /// Десериализация энциклопедии + разделы + краткая /// </summary> /// <param name="sDirectory"></param> /// <returns></returns> public EncyclopediaPartType Load(string sFullDirectory, string sDirectory) { JsonSerializer pSerializer = JsonSerializer.Create(new JsonSerializerSettings() { Formatting = Formatting.Indented }); using (FileStream pF = File.Open(Path.Combine(sFullDirectory, sDirectory, RootFilename), FileMode.Open)) { using (TextReader pT = new StreamReader(pF)) { EncyclopediaPartType encyclopediaPartType = pSerializer.Deserialize(pT, typeof(EncyclopediaPartType)) as EncyclopediaPartType; return(encyclopediaPartType); } } }
private void h_RefreshArticles(EncyclopediaPartType encyclopediaPartType) { // lvArticles.Items.Add(encyclopediaPartType.ArticleInfoList[0]) // ...TODO... }