回答編集履歴

2

回答修正

2017/02/16 06:59

投稿

退会済みユーザー
test CHANGED
@@ -1,19 +1,3 @@
1
- データバインドできなかったりgetterしか存在しない理由はそれを許すとバグの温床になったり書き換えを必要としないプロパティだからです。なので無理にそれを使うというのは製作者の意図からそれる実装になっている可能性があるのでなるべく避けたほうがいいと思います。
1
+ 回答修正:
2
2
 
3
-
4
-
5
- それでもデータの参照を求めたり機能改変をしたいのであれば[カスタムコントロールを作成する](https://msdn.microsoft.com/ja-jp/library/cc295235.aspx)のがいいと思います。このオブジェクト経由であれば参照をViewModelに寄せられると思います。
6
-
7
-
8
-
9
- > view が viewmodel のプロパティにラムダ式代入したりすることになります。
10
-
11
-
12
-
13
- これはそれぞれの役割を考えると出来たとしてもやらないほうがいいと思います。Viewにロジックを埋め込むことはあってもViewからViewModelにロジックを埋め込む必要は基本的にないはずです。ViewModelが肥大化し過ぎたりViewに密接に関わりすぎるロジックは別クラスに切り出すのが一般的だと思います。
14
-
15
-
16
-
17
- 追記:
18
-
19
- 他の方がおっしゃってるように疎結合な実装の方がいいと思いました。無知な回答をしてしまってすみません。誤解を招く部分の記述は削除します。
3
+ Viewモデルはコンポーネントを作るものなので他の方がおっしゃってるように疎結合な実装の方がいいと思いました。ViewModelについて誤解があり無知な回答をしてしまってすみません。誤解を招く回答をしてしまったで回答記述は削除します。

1

誤解を招く投稿

2017/02/16 06:59

投稿

退会済みユーザー
test CHANGED
@@ -10,12 +10,10 @@
10
10
 
11
11
 
12
12
 
13
- これはそれぞれの役割を考えると出来たとしてもやらないほうがいいと思います。Viewにロジックを埋め込むことはあってもViewからViewModelにロジックを埋め込む必要は基本的にないはずです。ViewModelが肥大化し過ぎたりViewに密接に関わりすぎるロジックはHelperというクラスに切り出すのが一般的だと思います。
13
+ これはそれぞれの役割を考えると出来たとしてもやらないほうがいいと思います。Viewにロジックを埋め込むことはあってもViewからViewModelにロジックを埋め込む必要は基本的にないはずです。ViewModelが肥大化し過ぎたりViewに密接に関わりすぎるロジックはクラスに切り出すのが一般的だと思います。
14
14
 
15
15
 
16
16
 
17
- 後は基本的には[ViewModelからViewの要素は何でも取ってこれるので](http://stackoverflow.com/questions/636383/how-can-i-find-wpf-controls-by-name-or-type)ViewModelから(直接コントロールに設定してもよいと思いますが)コントロールにイベントハンドラを設定してあげるのが一番きれいな実装だと思いますね。Viewに相互作用を与えるからViewModelなのでViewModelからViewを参照するのは全然問題ないと思います。
17
+ 追記:
18
18
 
19
-
20
-
21
- lazexさんこれら基本的な事はもすでやり尽くしていて、もっと特殊な実装を必要としているケースであれば役に立たない情報かもませんが如何でょうか?
19
+ 他の方おっしゃってるように疎結合な実装の方がいい思いました。無知回答をてしってすみません。誤解を招く部分の記述は削除ます。