質問編集履歴

5 意図的に内容を抹消する行為にあたるため

teratail

teratail score 515

2021/09/14 11:17  投稿

Month Calendarについて
Month Calendarについて
Month Calendarについて
```C#
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace MyHouseKeepingBook
{
  public partial class Form1 : Form
  {
      public Form1()
      {
          InitializeComponent();
      }
      private void buttonAdd_Click(object sender, EventArgs e)
      {
          AddData();
      }
      private void 追加AToolStripMenuItem_Click(object sender, EventArgs e)
      {
          AddData();
      }
      private void AddData()
      {
          ItemForm frmItem = new ItemForm(CategoryDataSet1);
          DialogResult drRet = frmItem.ShowDialog();
          if (drRet == DialogResult.OK)
          {
              moneyDataSet.moneyDataTable.AddmoneyDataTableRow(
              frmItem.monCalendar.SelectionRange.Start,
              frmItem.cmbCategory.Text,
              frmItem.txtItem.Text,
              int.Parse(frmItem.mtxtMoney.Text),
              frmItem.txtRemarks.Text);
          }
      }
      private void Form1_Load(object sender, EventArgs e)
      {
          LoadData();
          categoryDataSet1.CategoryDataTable.AddCategoryDataTableRow("給料", "入金");
          categoryDataSet1.CategoryDataTable.AddCategoryDataTableRow("食費", "出金");
          categoryDataSet1.CategoryDataTable.AddCategoryDataTableRow("雑費", "出金");
          categoryDataSet1.CategoryDataTable.AddCategoryDataTableRow("住居", "出金");
      }
      private void buttonEnd_Click(object sender, EventArgs e)
      {
          this.Close();
      }
      private void 終了XToolStripMenuItem_Click(object sender, EventArgs e)
      {
          this.Close();
      }
      private void SaveData()
      {
          string path = "MoneyData.csv"; //出力ファイル名
          string strData = ""; //一行分のデータ
          System.IO.StreamWriter sw = new System.IO.StreamWriter(
                 path,
                 false,
                 System.Text.Encoding.Default);
          foreach (MoneyDataSet.moneyDataTableRow drMoney
          in moneyDataSet.moneyDataTable)
          {
              strData = drMoney.日付.ToShortDataString() + ","
                      + drMoney.分類 + ","
                      + drMoney.品目 + ","
                      + drMoney.金額.ToString() + ","
                      + drMoney.備考;
              sw.WriteLine(strData);
          }
          sw.Close();
      }
      private void 保存SToolStripMenuItem_Click(object sender, EditorArgs e)
      {
          SaveData();
      }
      private void form1_FormClosing(object sender, FormClosingEditorArgs e)
      {
          SaveData();
      }
      private void LoadData()
      {
          string path = "MoneyData.csv"; //入力ファイル名
          string delimStr = ","; // 区切り文字
          char[] delimiter = delimStr.ToCharArray(); // 区切り文字をまとめる
          string[] strLine; // 分解後の文字の入れ物
          string strLine; // 一行分のデータ
          bool fileExists = System.IO.File.Exists(path);
          if (fileExists)
          {
              System.IO.StreamReader sr = new System.IO.StreamReader(
               path,
               System.Text.Encoding.Default);
              while (sr.Peek() >= 0)
              {
                  strLine = sr.ReadLine();
                  strData = strLine.Splite(delimiter);
                  moneyDataSet.moneyDataTable.AddmoneyDataTableRow(
                           DateTime.Parse(strData[0]),
                           strData[1],
                           strData[2],
                           int, Parse(strData[3]),
                           strData[4];
              }
              sr.Close;
          }
      }
      private void UpdateData()
      {
          int nowRow = dgv.CurrentRow, Index;
          DateTime oldDate
          = DateTime.Parse(dgv.Rows[nowRow].Cell[0].Value.ToString());
          string oldCategory = dgv.Rows[nowRow].Cell[1].Value.ToString();
          string oldItem = dgv.Rows[nowRow].Cell[2].Value.ToString();
          int oldMoney
          = int.Parse(dgv.Rows[nowRow].Cells[3].Value.ToString());
          string oldRemarks = dgv.Rows[nowRow].Cells[4].Value.ToString();
          ItemForm frmItem = newItemForm(categoryDataSet1,
          oldDate,
          oldCategory,
          oldItem,
          oldMoney,
          oldRemarks);
          DialogResult draRet = frmItem.ShowDialog();
          if (draRet == DialogResult.OK)
          {
              dgv.Rows[nowRow].Cells[0].Value
              = frmItem.monCalendar.SelectionRangr.Start;
              dgv.Rows[nowRow].Cells[1].Value = frmItem.cmbCategory.Text;
              dgv.Rows[nowRow].Cells[2].Value = frmItem.txtItem.Text;
              dgv.Rows[nowRow].Cells[3].Value = int.Parse.(frmItem.mtxtMoney.Text);
              dgv.Rows[nowRow].Cells[4].Value = frmItem.txtRemarks.Text;
          }
      }
      private void buttonChange_Click(object sender, EditorArgs e)
      {
          UpdateData();
      }
      private void 変更CToolStripMenuItem_Click(object sender, EditorArgs e)
      {
          UpdateData();
      }
      private void DeleteData()
      {
          int nowRow = DataGridView.CurrentRow.Index;
          DataGridView.Rows.RemoveAt(nowRow); // 現在行を削除
      }
      private void buttonDelete_Click(object sender, EditorArgs e)
      {
          DeleteData();
      }
      private void buttonChange_Click(object sender, EditorArgs e)
      {
          DeleteData();
      }
  }
}
```家計簿アプリの作成をVisual StudioのC#で行なっております。
Month Calendar でCSVに既に登録されている日付を選択できなくし、既に登録されている日付を選択するとメッセージボックスが表示されるようにしたいです。
説明が不自由かも知れませんが、ご教示いただければと存じます。
  • C#

    16177 questions

    C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

  • Visual Studio

    4424 questions

    Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

4

AIUABC

AIUABC score 1

2020/10/04 21:46  投稿

Month Calendarについて
```C#
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace MyHouseKeepingBook
{
   public partial class Form1 : Form
   {
       public Form1()
       {
           InitializeComponent();
       }
       private void buttonAdd_Click(object sender, EventArgs e)
       {
           AddData();
       }
       private void 追加AToolStripMenuItem_Click(object sender, EventArgs e)
       {
           AddData();
       }
       private void AddData()
       {
           ItemForm frmItem = new ItemForm(CategoryDataSet1);
           DialogResult drRet = frmItem.ShowDialog();
           if (drRet == DialogResult.OK)
           {
               moneyDataSet.moneyDataTable.AddmoneyDataTableRow(
               frmItem.monCalendar.SelectionRange.Start,
               frmItem.cmbCategory.Text,
               frmItem.txtItem.Text,
               int.Parse(frmItem.mtxtMoney.Text),
               frmItem.txtRemarks.Text);
           }
       }
       private void Form1_Load(object sender, EventArgs e)
       {
           LoadData();
           categoryDataSet1.CategoryDataTable.AddCategoryDataTableRow("給料", "入金");
           categoryDataSet1.CategoryDataTable.AddCategoryDataTableRow("食費", "出金");
           categoryDataSet1.CategoryDataTable.AddCategoryDataTableRow("雑費", "出金");
           categoryDataSet1.CategoryDataTable.AddCategoryDataTableRow("住居", "出金");
       }
       private void buttonEnd_Click(object sender, EventArgs e)
       {
           this.Close();
       }
       private void 終了XToolStripMenuItem_Click(object sender, EventArgs e)
       {
           this.Close();
       }
       private void SaveData()
       {
           string path = "MoneyData.csv"; //出力ファイル名
           string strData = ""; //一行分のデータ
           System.IO.StreamWriter sw = new System.IO.StreamWriter(
                  path,
                  false,
                  System.Text.Encoding.Default);
           foreach (MoneyDataSet.moneyDataTableRow drMoney
           in moneyDataSet.moneyDataTable)
           {
               strData = drMoney.日付.ToShortDataString() + ","
                       + drMoney.分類 + ","
                       + drMoney.品目 + ","
                       + drMoney.金額.ToString() + ","
                       + drMoney.備考;
               sw.WriteLine(strData);
           }
           sw.Close();
       }
       private void 保存SToolStripMenuItem_Click(object sender, EditorArgs e)
       {
           SaveData();
       }
       private void form1_FormClosing(object sender, FormClosingEditorArgs e)
       {
           SaveData();
       }
       private void LoadData()
       {
           string path = "MoneyData.csv"; //入力ファイル名
           string delimStr = ","; // 区切り文字
           char[] delimiter = delimStr.ToCharArray(); // 区切り文字をまとめる
           string[] strLine; // 分解後の文字の入れ物
           string strLine; // 一行分のデータ
           bool fileExists = System.IO.File.Exists(path);
           if (fileExists)
           {
               System.IO.StreamReader sr = new System.IO.StreamReader(
                path,
                System.Text.Encoding.Default);
               while (sr.Peek() >= 0)
               {
                   strLine = sr.ReadLine();
                   strData = strLine.Splite(delimiter);
                   moneyDataSet.moneyDataTable.AddmoneyDataTableRow(
                            DateTime.Parse(strData[0]),
                            strData[1],
                            strData[2],
                            int, Parse(strData[3]),
                            strData[4];
               }
               sr.Close;
           }
       }
       private void UpdateData()
       {
           int nowRow = dgv.CurrentRow, Index;
           DateTime oldDate
           = DateTime.Parse(dgv.Rows[nowRow].Cell[0].Value.ToString());
           string oldCategory = dgv.Rows[nowRow].Cell[1].Value.ToString();
           string oldItem = dgv.Rows[nowRow].Cell[2].Value.ToString();
           int oldMoney
           = int.Parse(dgv.Rows[nowRow].Cells[3].Value.ToString());
           string oldRemarks = dgv.Rows[nowRow].Cells[4].Value.ToString();
           ItemForm frmItem = newItemForm(categoryDataSet1,
           oldDate,
           oldCategory,
           oldItem,
           oldMoney,
           oldRemarks);
           DialogResult draRet = frmItem.ShowDialog();
           if (draRet == DialogResult.OK)
           {
               dgv.Rows[nowRow].Cells[0].Value
               = frmItem.monCalendar.SelectionRangr.Start;
               dgv.Rows[nowRow].Cells[1].Value = frmItem.cmbCategory.Text;
               dgv.Rows[nowRow].Cells[2].Value = frmItem.txtItem.Text;
               dgv.Rows[nowRow].Cells[3].Value = int.Parse.(frmItem.mtxtMoney.Text);
               dgv.Rows[nowRow].Cells[4].Value = frmItem.txtRemarks.Text;
           }
       }
       private void buttonChange_Click(object sender, EditorArgs e)
       {
           UpdateData();
       }
       private void 変更CToolStripMenuItem_Click(object sender, EditorArgs e)
       {
           UpdateData();
       }
       private void DeleteData()
       {
           int nowRow = DataGridView.CurrentRow.Index;
           DataGridView.Rows.RemoveAt(nowRow); // 現在行を削除
       }
       private void buttonDelete_Click(object sender, EditorArgs e)
       {
           DeleteData();
       }
       private void buttonChange_Click(object sender, EditorArgs e)
       {
           DeleteData();
       }
   }
}
```家計簿アプリの作成をVisual StudioのC#で行なっております。
Month Calendar でCSVに既に登録されている日付を選択できなくし、既に登録されている日付を選択するとメッセージボックスが表示されるようにしたいです。
説明が不自由かも知れませんが、ご教示いただければと存じます。
Month Calendarについて
Month Calendarについて
  • C#

    16177 questions

    C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

  • Visual Studio

    4424 questions

    Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

3 現時点でのコードです。

AIUABC

AIUABC score 1

2020/09/29 22:10  投稿

Month Calendarについて
家計簿アプリの作成をVisual StudioのC#で行なっております。
```C#
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace MyHouseKeepingBook
{
   public partial class Form1 : Form
   {
       public Form1()
       {
           InitializeComponent();
       }
       private void buttonAdd_Click(object sender, EventArgs e)
       {
           AddData();
       }
       private void 追加AToolStripMenuItem_Click(object sender, EventArgs e)
       {
           AddData();
       }
       private void AddData()
       {
           ItemForm frmItem = new ItemForm(CategoryDataSet1);
           DialogResult drRet = frmItem.ShowDialog();
           if (drRet == DialogResult.OK)
           {
               moneyDataSet.moneyDataTable.AddmoneyDataTableRow(
               frmItem.monCalendar.SelectionRange.Start,
               frmItem.cmbCategory.Text,
               frmItem.txtItem.Text,
               int.Parse(frmItem.mtxtMoney.Text),
               frmItem.txtRemarks.Text);
           }
       }
       private void Form1_Load(object sender, EventArgs e)
       {
           LoadData();
           categoryDataSet1.CategoryDataTable.AddCategoryDataTableRow("給料", "入金");
           categoryDataSet1.CategoryDataTable.AddCategoryDataTableRow("食費", "出金");
           categoryDataSet1.CategoryDataTable.AddCategoryDataTableRow("雑費", "出金");
           categoryDataSet1.CategoryDataTable.AddCategoryDataTableRow("住居", "出金");
       }
       private void buttonEnd_Click(object sender, EventArgs e)
       {
           this.Close();
       }
       private void 終了XToolStripMenuItem_Click(object sender, EventArgs e)
       {
           this.Close();
       }
       private void SaveData()
       {
           string path = "MoneyData.csv"; //出力ファイル名
           string strData = ""; //一行分のデータ
           System.IO.StreamWriter sw = new System.IO.StreamWriter(
                  path,
                  false,
                  System.Text.Encoding.Default);
           foreach (MoneyDataSet.moneyDataTableRow drMoney
           in moneyDataSet.moneyDataTable)
           {
               strData = drMoney.日付.ToShortDataString() + ","
                       + drMoney.分類 + ","
                       + drMoney.品目 + ","
                       + drMoney.金額.ToString() + ","
                       + drMoney.備考;
               sw.WriteLine(strData);
           }
           sw.Close();
       }
       private void 保存SToolStripMenuItem_Click(object sender, EditorArgs e)
       {
           SaveData();
       }
       private void form1_FormClosing(object sender, FormClosingEditorArgs e)
       {
           SaveData();
       }
       private void LoadData()
       {
           string path = "MoneyData.csv"; //入力ファイル名
           string delimStr = ","; // 区切り文字
           char[] delimiter = delimStr.ToCharArray(); // 区切り文字をまとめる
           string[] strLine; // 分解後の文字の入れ物
           string strLine; // 一行分のデータ
           bool fileExists = System.IO.File.Exists(path);
           if (fileExists)
           {
               System.IO.StreamReader sr = new System.IO.StreamReader(
                path,
                System.Text.Encoding.Default);
               while (sr.Peek() >= 0)
               {
                   strLine = sr.ReadLine();
                   strData = strLine.Splite(delimiter);
                   moneyDataSet.moneyDataTable.AddmoneyDataTableRow(
                            DateTime.Parse(strData[0]),
                            strData[1],
                            strData[2],
                            int, Parse(strData[3]),
                            strData[4];
               }
               sr.Close;
           }
       }
       private void UpdateData()
       {
           int nowRow = dgv.CurrentRow, Index;
           DateTime oldDate
           = DateTime.Parse(dgv.Rows[nowRow].Cell[0].Value.ToString());
           string oldCategory = dgv.Rows[nowRow].Cell[1].Value.ToString();
           string oldItem = dgv.Rows[nowRow].Cell[2].Value.ToString();
           int oldMoney
           = int.Parse(dgv.Rows[nowRow].Cells[3].Value.ToString());
           string oldRemarks = dgv.Rows[nowRow].Cells[4].Value.ToString();
           ItemForm frmItem = newItemForm(categoryDataSet1,
           oldDate,
           oldCategory,
           oldItem,
           oldMoney,
           oldRemarks);
           DialogResult draRet = frmItem.ShowDialog();
           if (draRet == DialogResult.OK)
           {
               dgv.Rows[nowRow].Cells[0].Value
               = frmItem.monCalendar.SelectionRangr.Start;
               dgv.Rows[nowRow].Cells[1].Value = frmItem.cmbCategory.Text;
               dgv.Rows[nowRow].Cells[2].Value = frmItem.txtItem.Text;
               dgv.Rows[nowRow].Cells[3].Value = int.Parse.(frmItem.mtxtMoney.Text);
               dgv.Rows[nowRow].Cells[4].Value = frmItem.txtRemarks.Text;
           }
       }
       private void buttonChange_Click(object sender, EditorArgs e)
       {
           UpdateData();
       }
       private void 変更CToolStripMenuItem_Click(object sender, EditorArgs e)
       {
           UpdateData();
       }
       private void DeleteData()
       {
           int nowRow = DataGridView.CurrentRow.Index;
           DataGridView.Rows.RemoveAt(nowRow); // 現在行を削除
       }
       private void buttonDelete_Click(object sender, EditorArgs e)
       {
           DeleteData();
       }
       private void buttonChange_Click(object sender, EditorArgs e)
       {
           DeleteData();
       }
   }
}
```家計簿アプリの作成をVisual StudioのC#で行なっております。
Month Calendar でCSVに既に登録されている日付を選択できなくし、既に登録されている日付を選択するとメッセージボックスが表示されるようにしたいです。
説明が不自由かも知れませんが、ご教示いただければと存じます。
  • C#

    16177 questions

    C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

  • Visual Studio

    4424 questions

    Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

2

AIUABC

AIUABC score 1

2020/07/30 21:52  投稿

Month Calendarについて
家計簿アプリの作成をVisual StudioのC#で行なっております。
Month Calendar でCSVに既に登録されている日付を選択できなくし、既に登録されている日付を選択するとメッセージボックスが表示されるようにしたいです。
 
説明が不自由かも知れませんが、ご教示いただければと存じます。
  • C#

    16177 questions

    C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

  • Visual Studio

    4424 questions

    Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

1

AIUABC

AIUABC score 1

2020/07/30 21:46  投稿

Month Calendarについて
Visual StudioでC#の学習を行なっております。
家計簿アプリの作成をVisual StudioのC#で行なっております。
Month Calendar でCSVに既に登録されている日付を選択できなくし、既に登録されている日付を選択するとメッセージボックスが表示されるようにしたいです。
説明が不自由かも知れませんが、ご教示いただければと存じます。
  • C#

    16177 questions

    C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

  • Visual Studio

    4424 questions

    Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る