質問編集履歴
1
編集
title
CHANGED
File without changes
|
body
CHANGED
@@ -12,8 +12,67 @@
|
|
12
12
|
|
13
13
|
```C#
|
14
14
|
|
15
|
+
/// <summary>
|
15
|
-
///
|
16
|
+
/// CSV出力ボタン押下時
|
16
17
|
/// </summary>
|
18
|
+
private void CSV_Output_Click(object sender, EventArgs e)
|
19
|
+
{
|
20
|
+
// SaveFileDialogを作成する
|
21
|
+
SaveFileDialog result = new SaveFileDialog();
|
22
|
+
result.Title = "ファイルを保存する";
|
23
|
+
// 初期表示時のディレクトリを指定
|
24
|
+
result.InitialDirectory = @"C:\Users\Admin\Downloads";
|
25
|
+
// ファイル名を指定、取得する
|
26
|
+
result.FileName = @"ForOutput.csv";
|
27
|
+
// 選択できるファイルの種類を指定する
|
28
|
+
result.Filter = "CSV (カンマ区切り)|*.csv";
|
29
|
+
// ファイル出力(保存)ダイアログ表示
|
30
|
+
DialogResult FileOutput = result.ShowDialog();
|
31
|
+
|
32
|
+
// dataGridViewからデータ取得(Loop処理)
|
33
|
+
if (FileOutput == DialogResult.OK)
|
34
|
+
{
|
35
|
+
//「保存」ボタンが押された時の処理
|
36
|
+
string fileName = result.FileName; //指定されたファイルのパスを取得する
|
37
|
+
}
|
38
|
+
else if (FileOutput == DialogResult.Cancel)
|
39
|
+
{
|
40
|
+
//「キャンセル」ボタンまたは「×」ボタンが選択された時の処理
|
41
|
+
}
|
42
|
+
|
43
|
+
// 保存用のファイルを開く ( ファイルパス )( ファイル名 ) (文字コード指定)
|
44
|
+
using (StreamWriter writer = new StreamWriter(@"C:\Users\Admin\Downloads\ForOutput.csv", false, Encoding.GetEncoding("shift_jis")))
|
45
|
+
{
|
46
|
+
int rowCount = DataGrid.Rows.Count;
|
47
|
+
if (DataGrid.AllowUserToAddRows == true)
|
48
|
+
{
|
49
|
+
// rowCount 最後の新規入力用の1行分を差し引く
|
50
|
+
rowCount = rowCount - 1;
|
51
|
+
}
|
52
|
+
|
53
|
+
// 行 rowCount DataGrildViewの行数文ループ
|
54
|
+
for (int i = 0; i < rowCount; i++)
|
55
|
+
{
|
56
|
+
// リストの初期化
|
57
|
+
List<String> strList = new List<String>();
|
58
|
+
// 列 Columns.Coun カルムと同じ数だけループする
|
59
|
+
for (int j = 0; j < DataGrid.Columns.Count; j++)
|
60
|
+
{
|
61
|
+
strList.Add(DataGrid[j, i].Value.ToString());
|
62
|
+
}
|
63
|
+
|
64
|
+
// 配列へ変換
|
65
|
+
String[] strArray = strList.ToArray();
|
66
|
+
// CSV 形式に変換(ファイル出力)
|
67
|
+
String strCsvData = String.Join(",", strArray);
|
68
|
+
writer.WriteLine(strCsvData);
|
69
|
+
}
|
70
|
+
}
|
71
|
+
}
|
72
|
+
|
73
|
+
/// <summary>
|
74
|
+
/// 入出庫種別の値変換
|
75
|
+
/// </summary>
|
17
76
|
private void DataGrid_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
|
18
77
|
{
|
19
78
|
DataGridView dgv = (DataGridView)sender;
|
@@ -26,11 +85,13 @@
|
|
26
85
|
{
|
27
86
|
return;
|
28
87
|
}
|
88
|
+
|
29
89
|
// e.Valueの値が1なら"入庫"に変換
|
30
90
|
if (int.Parse(e.Value.ToString()) == 1)
|
31
91
|
{
|
32
92
|
e.Value = "入庫";
|
33
93
|
}
|
94
|
+
|
34
95
|
// e.Valueの値が2なら"出庫"に変換
|
35
96
|
else if (int.Parse(e.Value.ToString()) == 2)
|
36
97
|
{
|
@@ -38,4 +99,5 @@
|
|
38
99
|
}
|
39
100
|
}
|
40
101
|
}
|
102
|
+
|
41
103
|
```
|