teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

見直しキャンペーン中

2023/07/21 13:52

投稿

TN8001
TN8001

スコア10112

answer CHANGED
@@ -1,212 +1,212 @@
1
- 参考にしたサイトかなんかがあるのでしたら、一緒に提示してください。
2
-
3
- #### エラー原因
4
- ###### 1個目
5
-
6
- ```
7
- <ComboBox x:Name="ChangeYEAR" SelectionChanged="ChangYEAR_SelectionChanged"/>
8
- ```
9
- xamlに↑のような表記があるのに
10
- ```
11
- private void ChangYEAR_SelectionChanged(object sender, SelectionChangedEventArgs e)
12
- {
13
- }
14
- ```
15
- csに↑のようなメソッドがないため。
16
-
17
- ###### 2個目
18
- コンボボックス`ChangeYEAR` `ChangeMONTH`に、`GetYear()` `getmonth()`のようなメソッドがないため。
19
-
20
- ---
21
-
22
- とりあえず元コードを尊重しながら動くようにしました。
23
- xamlがわからないのででっち上げましたが、構造は気にしないでいいです。
24
- ```xaml
25
- <ComboBox x:Name="ChangeYEAR" SelectionChanged="SelectionChanged" />
26
- ```
27
- のように名前とイベントの対応があっていれば十分です。
28
-
29
- ```xaml
30
- <Window
31
- x:Class="Questions259221.MainWindow"
32
- xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
33
- xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
34
- Width="800"
35
- Height="450">
36
- <StackPanel>
37
- <StackPanel Orientation="Horizontal">
38
- <ComboBox
39
- x:Name="ChangeYEAR"
40
- Width="100"
41
- SelectionChanged="SelectionChanged" />
42
- <ComboBox
43
- x:Name="ChangeMONTH"
44
- Width="100"
45
- SelectionChanged="SelectionChanged" />
46
- <Button
47
- x:Name="Today"
48
- Click="Today_Click"
49
- Content="Today" />
50
- </StackPanel>
51
-
52
- <UniformGrid
53
- Width="300"
54
- Height="300"
55
- HorizontalAlignment="Left"
56
- VerticalAlignment="Top"
57
- Columns="7">
58
-
59
- <Label Content="Sun" />
60
- <Label Content="Mon" />
61
- <Label Content="Tue" />
62
- <Label Content="Wed" />
63
- <Label Content="Thu" />
64
- <Label Content="Fri" />
65
- <Label Content="Sat" />
66
-
67
- <Label x:Name="Su1" />
68
- <Label x:Name="Mo1" />
69
- <Label x:Name="Tu1" />
70
- <Label x:Name="We1" />
71
- <Label x:Name="Th1" />
72
- <Label x:Name="Fr1" />
73
- <Label x:Name="Sa1" />
74
-
75
- <Label x:Name="Su2" />
76
- <Label x:Name="Mo2" />
77
- <Label x:Name="Tu2" />
78
- <Label x:Name="We2" />
79
- <Label x:Name="Th2" />
80
- <Label x:Name="Fr2" />
81
- <Label x:Name="Sa2" />
82
-
83
- <Label x:Name="Su3" />
84
- <Label x:Name="Mo3" />
85
- <Label x:Name="Tu3" />
86
- <Label x:Name="We3" />
87
- <Label x:Name="Th3" />
88
- <Label x:Name="Fr3" />
89
- <Label x:Name="Sa3" />
90
-
91
- <Label x:Name="Su4" />
92
- <Label x:Name="Mo4" />
93
- <Label x:Name="Tu4" />
94
- <Label x:Name="We4" />
95
- <Label x:Name="Th4" />
96
- <Label x:Name="Fr4" />
97
- <Label x:Name="Sa4" />
98
-
99
- <Label x:Name="Su5" />
100
- <Label x:Name="Mo5" />
101
- <Label x:Name="Tu5" />
102
- <Label x:Name="We5" />
103
- <Label x:Name="Th5" />
104
- <Label x:Name="Fr5" />
105
- <Label x:Name="Sa5" />
106
-
107
- <Label x:Name="Su6" />
108
- <Label x:Name="Mo6" />
109
- <Label x:Name="Tu6" />
110
- <Label x:Name="We6" />
111
- <Label x:Name="Th6" />
112
- <Label x:Name="Fr6" />
113
- <Label x:Name="Sa6" />
114
- </UniformGrid>
115
- </StackPanel>
116
- </Window>
117
- ```
118
-
119
- ```cs
120
- using System;
121
- using System.Collections.Generic;
122
- using System.Windows;
123
- using System.Windows.Controls;
124
-
125
- namespace Questions259221
126
- {
127
- public partial class MainWindow : Window
128
- {
129
- private bool combbox_change = true;
130
- private List<Label> test;
131
-
132
- public MainWindow()
133
- {
134
- InitializeComponent();
135
-
136
- DateTime now = DateTime.Now;
137
-
138
- List<int> years = new List<int>();
139
- for(int i = now.Year - 10; i <= now.Year + 10; i++)
140
- {
141
- years.Add(i);
142
- }
143
- int[] month = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 };
144
-
145
-
146
- // ラベルリストの初期化&中身
147
- test = new List<Label>
148
- {
149
- Su1, Mo1, Tu1, We1, Th1, Fr1, Sa1,
150
- Su2, Mo2, Tu2, We2, Th2, Fr2, Sa2,
151
- Su3, Mo3, Tu3, We3, Th3, Fr3, Sa3,
152
- Su4, Mo4, Tu4, We4, Th4, Fr4, Sa4,
153
- Su5, Mo5, Tu5, We5, Th5, Fr5, Sa5,
154
- Su6, Mo6, Tu6, We6, Th6, Fr6, Sa6,
155
- };
156
-
157
- ChangeYEAR.ItemsSource = years;
158
- ChangeMONTH.ItemsSource = month;
159
-
160
- combbox_change = false;
161
- ChangeYEAR.SelectedItem = now.Year;
162
- combbox_change = true;
163
- ChangeMONTH.SelectedItem = now.Month;
164
- }
165
-
166
- private void SelectionChanged(object sender, SelectionChangedEventArgs e)
167
- {
168
- if(combbox_change != true) return;
169
-
170
- // 一旦全ラベルをクリア
171
- foreach(Label label in test) label.Content = "";
172
-
173
- var firstDate = new DateTime((int)ChangeYEAR.SelectedItem, (int)ChangeMONTH.SelectedItem, 1);
174
- int lastday = firstDate.AddMonths(1).AddDays(-1).Day;
175
- int dayOFWeek = (int)firstDate.DayOfWeek;
176
-
177
- for(int day = 1; day <= lastday; day++)
178
- {
179
- int index = day - 1 + dayOFWeek;
180
- test[index].Content = day;
181
- }
182
- }
183
-
184
- private void Today_Click(object sender, RoutedEventArgs e)
185
- {
186
- DateTime now = DateTime.Now;
187
-
188
- ChangeYEAR.SelectedItem = now.Year;
189
- ChangeMONTH.SelectedItem = now.Month;
190
- }
191
- }
192
- }
193
- ```
194
-
195
- ---
196
-
197
- > オススメないし初心者向けのものがあれば教えてください
198
-
199
- 本の形になっているのはこちらでしょうか(無料で内容を公開されていますが)
200
- [WPF 4.5入門 | 大田一希 | 工学 | Kindleストア | Amazon](https://www.amazon.co.jp/WPF-4-5%E5%85%A5%E9%96%80-%E5%A4%A7%E7%94%B0%E4%B8%80%E5%B8%8C-ebook/dp/B015WXYUUU)
201
-
202
- あとはWeb上の情報でしょうか。
203
-
204
- ある程度まとまっているもの(順不同)
205
- [ 連載:WPF入門 - @IT](https://www.atmarkit.co.jp/ait/series/2794/)
206
- [ » WPF 学習用ドキュメント作りました](http://kisuke0303.sakura.ne.jp/blog/?p=340)
207
- [WPF Prism 入門エントリまとめ | :: halation ghost ::](https://elf-mission.net/wpf-prism-index/) ちょっと難しめ
208
-
209
- ブログ(順不同)
210
- [かずきのBlog@hatena](https://blog.okazuki.jp/)
211
- [grabacr.nét | PaaS (Patchouli as a Shachiku)](http://grabacr.net/)
1
+ 参考にしたサイトかなんかがあるのでしたら、一緒に提示してください。
2
+
3
+ #### エラー原因
4
+ ###### 1個目
5
+
6
+ ```xml
7
+ <ComboBox x:Name="ChangeYEAR" SelectionChanged="ChangYEAR_SelectionChanged"/>
8
+ ```
9
+ xamlに↑のような表記があるのに
10
+ ```cs
11
+ private void ChangYEAR_SelectionChanged(object sender, SelectionChangedEventArgs e)
12
+ {
13
+ }
14
+ ```
15
+ csに↑のようなメソッドがないため。
16
+
17
+ ###### 2個目
18
+ コンボボックス`ChangeYEAR``ChangeMONTH`に、`GetYear()``getmonth()`のようなメソッドがないため。
19
+
20
+ ---
21
+
22
+ とりあえず元コードを尊重しながら動くようにしました。
23
+ xamlがわからないのででっち上げましたが、構造は気にしないでいいです。
24
+ ```xml
25
+ <ComboBox x:Name="ChangeYEAR" SelectionChanged="SelectionChanged" />
26
+ ```
27
+ のように名前とイベントの対応があっていれば十分です。
28
+
29
+ ```xml
30
+ <Window
31
+ x:Class="Questions259221.MainWindow"
32
+ xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
33
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
34
+ Width="800"
35
+ Height="450">
36
+ <StackPanel>
37
+ <StackPanel Orientation="Horizontal">
38
+ <ComboBox
39
+ x:Name="ChangeYEAR"
40
+ Width="100"
41
+ SelectionChanged="SelectionChanged" />
42
+ <ComboBox
43
+ x:Name="ChangeMONTH"
44
+ Width="100"
45
+ SelectionChanged="SelectionChanged" />
46
+ <Button
47
+ x:Name="Today"
48
+ Click="Today_Click"
49
+ Content="Today" />
50
+ </StackPanel>
51
+
52
+ <UniformGrid
53
+ Width="300"
54
+ Height="300"
55
+ HorizontalAlignment="Left"
56
+ VerticalAlignment="Top"
57
+ Columns="7">
58
+
59
+ <Label Content="Sun" />
60
+ <Label Content="Mon" />
61
+ <Label Content="Tue" />
62
+ <Label Content="Wed" />
63
+ <Label Content="Thu" />
64
+ <Label Content="Fri" />
65
+ <Label Content="Sat" />
66
+
67
+ <Label x:Name="Su1" />
68
+ <Label x:Name="Mo1" />
69
+ <Label x:Name="Tu1" />
70
+ <Label x:Name="We1" />
71
+ <Label x:Name="Th1" />
72
+ <Label x:Name="Fr1" />
73
+ <Label x:Name="Sa1" />
74
+
75
+ <Label x:Name="Su2" />
76
+ <Label x:Name="Mo2" />
77
+ <Label x:Name="Tu2" />
78
+ <Label x:Name="We2" />
79
+ <Label x:Name="Th2" />
80
+ <Label x:Name="Fr2" />
81
+ <Label x:Name="Sa2" />
82
+
83
+ <Label x:Name="Su3" />
84
+ <Label x:Name="Mo3" />
85
+ <Label x:Name="Tu3" />
86
+ <Label x:Name="We3" />
87
+ <Label x:Name="Th3" />
88
+ <Label x:Name="Fr3" />
89
+ <Label x:Name="Sa3" />
90
+
91
+ <Label x:Name="Su4" />
92
+ <Label x:Name="Mo4" />
93
+ <Label x:Name="Tu4" />
94
+ <Label x:Name="We4" />
95
+ <Label x:Name="Th4" />
96
+ <Label x:Name="Fr4" />
97
+ <Label x:Name="Sa4" />
98
+
99
+ <Label x:Name="Su5" />
100
+ <Label x:Name="Mo5" />
101
+ <Label x:Name="Tu5" />
102
+ <Label x:Name="We5" />
103
+ <Label x:Name="Th5" />
104
+ <Label x:Name="Fr5" />
105
+ <Label x:Name="Sa5" />
106
+
107
+ <Label x:Name="Su6" />
108
+ <Label x:Name="Mo6" />
109
+ <Label x:Name="Tu6" />
110
+ <Label x:Name="We6" />
111
+ <Label x:Name="Th6" />
112
+ <Label x:Name="Fr6" />
113
+ <Label x:Name="Sa6" />
114
+ </UniformGrid>
115
+ </StackPanel>
116
+ </Window>
117
+ ```
118
+
119
+ ```cs
120
+ using System;
121
+ using System.Collections.Generic;
122
+ using System.Windows;
123
+ using System.Windows.Controls;
124
+
125
+ namespace Questions259221
126
+ {
127
+ public partial class MainWindow : Window
128
+ {
129
+ private bool combbox_change = true;
130
+ private List<Label> test;
131
+
132
+ public MainWindow()
133
+ {
134
+ InitializeComponent();
135
+
136
+ DateTime now = DateTime.Now;
137
+
138
+ List<int> years = new List<int>();
139
+ for(int i = now.Year - 10; i <= now.Year + 10; i++)
140
+ {
141
+ years.Add(i);
142
+ }
143
+ int[] month = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 };
144
+
145
+
146
+ // ラベルリストの初期化&中身
147
+ test = new List<Label>
148
+ {
149
+ Su1, Mo1, Tu1, We1, Th1, Fr1, Sa1,
150
+ Su2, Mo2, Tu2, We2, Th2, Fr2, Sa2,
151
+ Su3, Mo3, Tu3, We3, Th3, Fr3, Sa3,
152
+ Su4, Mo4, Tu4, We4, Th4, Fr4, Sa4,
153
+ Su5, Mo5, Tu5, We5, Th5, Fr5, Sa5,
154
+ Su6, Mo6, Tu6, We6, Th6, Fr6, Sa6,
155
+ };
156
+
157
+ ChangeYEAR.ItemsSource = years;
158
+ ChangeMONTH.ItemsSource = month;
159
+
160
+ combbox_change = false;
161
+ ChangeYEAR.SelectedItem = now.Year;
162
+ combbox_change = true;
163
+ ChangeMONTH.SelectedItem = now.Month;
164
+ }
165
+
166
+ private void SelectionChanged(object sender, SelectionChangedEventArgs e)
167
+ {
168
+ if(combbox_change != true) return;
169
+
170
+ // 一旦全ラベルをクリア
171
+ foreach(Label label in test) label.Content = "";
172
+
173
+ var firstDate = new DateTime((int)ChangeYEAR.SelectedItem, (int)ChangeMONTH.SelectedItem, 1);
174
+ int lastday = firstDate.AddMonths(1).AddDays(-1).Day;
175
+ int dayOFWeek = (int)firstDate.DayOfWeek;
176
+
177
+ for(int day = 1; day <= lastday; day++)
178
+ {
179
+ int index = day - 1 + dayOFWeek;
180
+ test[index].Content = day;
181
+ }
182
+ }
183
+
184
+ private void Today_Click(object sender, RoutedEventArgs e)
185
+ {
186
+ DateTime now = DateTime.Now;
187
+
188
+ ChangeYEAR.SelectedItem = now.Year;
189
+ ChangeMONTH.SelectedItem = now.Month;
190
+ }
191
+ }
192
+ }
193
+ ```
194
+
195
+ ---
196
+
197
+ > オススメないし初心者向けのものがあれば教えてください
198
+
199
+ 本の形になっているのはこちらでしょうか(無料で内容を公開されていますが)
200
+ [WPF 4.5入門 | 大田一希 | 工学 | Kindleストア | Amazon](https://www.amazon.co.jp/WPF-4-5%E5%85%A5%E9%96%80-%E5%A4%A7%E7%94%B0%E4%B8%80%E5%B8%8C-ebook/dp/B015WXYUUU)
201
+
202
+ あとはWeb上の情報でしょうか。
203
+
204
+ ある程度まとまっているもの(順不同)
205
+ [ 連載:WPF入門 - @IT](https://www.atmarkit.co.jp/ait/series/2794/)
206
+ [ » WPF 学習用ドキュメント作りました](http://kisuke0303.sakura.ne.jp/blog/?p=340)
207
+ [WPF Prism 入門エントリまとめ | :: halation ghost ::](https://elf-mission.net/wpf-prism-index/) ちょっと難しめ
208
+
209
+ ブログ(順不同)
210
+ [かずきのBlog@hatena](https://blog.okazuki.jp/)
211
+ [grabacr.nét | PaaS (Patchouli as a Shachiku)](http://grabacr.net/)
212
212
  [uEN Laboratory](http://s-ueno.github.io/) 記事は少ないがこんなこともできるんだ」と夢が広がる

1

UniformGrid

2020/05/06 08:04

投稿

TN8001
TN8001

スコア10112

answer CHANGED
@@ -48,71 +48,70 @@
48
48
  Click="Today_Click"
49
49
  Content="Today" />
50
50
  </StackPanel>
51
- <StackPanel>
52
- <StackPanel Orientation="Horizontal">
53
- <Label Width="45" Content="Sun" />
54
- <Label Width="45" Content="Mon" />
55
- <Label Width="45" Content="Tue" />
56
- <Label Width="45" Content="Wed" />
57
- <Label Width="45" Content="Thu" />
58
- <Label Width="45" Content="Fri" />
59
- <Label Width="45" Content="Sat" />
60
- </StackPanel>
61
- <StackPanel Orientation="Horizontal">
62
- <Label x:Name="Su1" Width="45" />
63
- <Label x:Name="Mo1" Width="45" />
64
- <Label x:Name="Tu1" Width="45" />
65
- <Label x:Name="We1" Width="45" />
66
- <Label x:Name="Th1" Width="45" />
67
- <Label x:Name="Fr1" Width="45" />
68
- <Label x:Name="Sa1" Width="45" />
69
- </StackPanel>
70
- <StackPanel Orientation="Horizontal">
71
- <Label x:Name="Su2" Width="45" />
72
- <Label x:Name="Mo2" Width="45" />
73
- <Label x:Name="Tu2" Width="45" />
74
- <Label x:Name="We2" Width="45" />
75
- <Label x:Name="Th2" Width="45" />
76
- <Label x:Name="Fr2" Width="45" />
77
- <Label x:Name="Sa2" Width="45" />
78
- </StackPanel>
79
- <StackPanel Orientation="Horizontal">
80
- <Label x:Name="Su3" Width="45" />
81
- <Label x:Name="Mo3" Width="45" />
82
- <Label x:Name="Tu3" Width="45" />
83
- <Label x:Name="We3" Width="45" />
84
- <Label x:Name="Th3" Width="45" />
85
- <Label x:Name="Fr3" Width="45" />
86
- <Label x:Name="Sa3" Width="45" />
87
- </StackPanel>
88
- <StackPanel Orientation="Horizontal">
89
- <Label x:Name="Su4" Width="45" />
90
- <Label x:Name="Mo4" Width="45" />
91
- <Label x:Name="Tu4" Width="45" />
92
- <Label x:Name="We4" Width="45" />
93
- <Label x:Name="Th4" Width="45" />
94
- <Label x:Name="Fr4" Width="45" />
95
- <Label x:Name="Sa4" Width="45" />
96
- </StackPanel>
97
- <StackPanel Orientation="Horizontal">
98
- <Label x:Name="Su5" Width="45" />
99
- <Label x:Name="Mo5" Width="45" />
100
- <Label x:Name="Tu5" Width="45" />
101
- <Label x:Name="We5" Width="45" />
102
- <Label x:Name="Th5" Width="45" />
103
- <Label x:Name="Fr5" Width="45" />
104
- <Label x:Name="Sa5" Width="45" />
105
- </StackPanel>
106
- <StackPanel Orientation="Horizontal">
107
- <Label x:Name="Su6" Width="45" />
108
- <Label x:Name="Mo6" Width="45" />
109
- <Label x:Name="Tu6" Width="45" />
110
- <Label x:Name="We6" Width="45" />
111
- <Label x:Name="Th6" Width="45" />
112
- <Label x:Name="Fr6" Width="45" />
113
- <Label x:Name="Sa6" Width="45" />
114
- </StackPanel>
115
- </StackPanel>
51
+
52
+ <UniformGrid
53
+ Width="300"
54
+ Height="300"
55
+ HorizontalAlignment="Left"
56
+ VerticalAlignment="Top"
57
+ Columns="7">
58
+
59
+ <Label Content="Sun" />
60
+ <Label Content="Mon" />
61
+ <Label Content="Tue" />
62
+ <Label Content="Wed" />
63
+ <Label Content="Thu" />
64
+ <Label Content="Fri" />
65
+ <Label Content="Sat" />
66
+
67
+ <Label x:Name="Su1" />
68
+ <Label x:Name="Mo1" />
69
+ <Label x:Name="Tu1" />
70
+ <Label x:Name="We1" />
71
+ <Label x:Name="Th1" />
72
+ <Label x:Name="Fr1" />
73
+ <Label x:Name="Sa1" />
74
+
75
+ <Label x:Name="Su2" />
76
+ <Label x:Name="Mo2" />
77
+ <Label x:Name="Tu2" />
78
+ <Label x:Name="We2" />
79
+ <Label x:Name="Th2" />
80
+ <Label x:Name="Fr2" />
81
+ <Label x:Name="Sa2" />
82
+
83
+ <Label x:Name="Su3" />
84
+ <Label x:Name="Mo3" />
85
+ <Label x:Name="Tu3" />
86
+ <Label x:Name="We3" />
87
+ <Label x:Name="Th3" />
88
+ <Label x:Name="Fr3" />
89
+ <Label x:Name="Sa3" />
90
+
91
+ <Label x:Name="Su4" />
92
+ <Label x:Name="Mo4" />
93
+ <Label x:Name="Tu4" />
94
+ <Label x:Name="We4" />
95
+ <Label x:Name="Th4" />
96
+ <Label x:Name="Fr4" />
97
+ <Label x:Name="Sa4" />
98
+
99
+ <Label x:Name="Su5" />
100
+ <Label x:Name="Mo5" />
101
+ <Label x:Name="Tu5" />
102
+ <Label x:Name="We5" />
103
+ <Label x:Name="Th5" />
104
+ <Label x:Name="Fr5" />
105
+ <Label x:Name="Sa5" />
106
+
107
+ <Label x:Name="Su6" />
108
+ <Label x:Name="Mo6" />
109
+ <Label x:Name="Tu6" />
110
+ <Label x:Name="We6" />
111
+ <Label x:Name="Th6" />
112
+ <Label x:Name="Fr6" />
113
+ <Label x:Name="Sa6" />
114
+ </UniformGrid>
116
115
  </StackPanel>
117
116
  </Window>
118
117
  ```