C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[3]: 子ControlのDataContextをバインドさせない


(過去ログ 140 を表示中)

[トピック内 4 記事 (1 - 4 表示)]  << 0 >>

■82231 / inTopicNo.1)  子ControlのDataContextをバインドさせない
  
□投稿者/ jinjin (5回)-(2016/12/19(Mon) 16:29:43)

分類:[.NET 全般] 

VisualStudio2015
.NET 4.5(とか)
WPF

Windowに貼り付けたユーザー コントロール(以降”UC”略)のDataContextが
WindowのDataContextにバインドされないようにしたい。


UC自身で、自分のDataContextを設定している(自己完結している)。
これをWindowに貼り付けると、Window.DataContextがUC.DataContextに上書きされてしまう。

Window側のXAMLで

(Window)
 (MyControl DataContext="{自動でバインドしないでください}" /)
(/Window)

のようなことは可能なのでしょうか?
コードビハインド等、方法はなんでも可です。


基本的なことのように思えるのですが
Google先生に聞いてもわかりませんでした。

そもそもユーザーコントロール自身でDataContextを設定していること
自体がルール違反なのでしょうか?


皆様、何卒よろしくお願い致します。



引用返信 編集キー/
■82260 / inTopicNo.2)  Re[1]: 子ControlのDataContextをバインドさせない
□投稿者/ ぶなっぷ (100回)-(2016/12/26(Mon) 09:16:47)
???
説明が分かりづらいです(^^;)

MyControlのDataContextは、
<UserControl x:Class="MyControl">
    <UserControl.DataContext>
        <MyControlVM />
    </UserControl.DataContext>
</UserControl>
みたく、MyControlVMを自身で設定してるから、

<Window x:Name="Win">
    <MyControl x:Name="Ctl" DataContext="{Binding WinVM}" />
</Window>
みたく、勝手にWinVMを上書きすんじゃねーってことかな?

引用返信 編集キー/
■82270 / inTopicNo.3)  Re[2]: 子ControlのDataContextをバインドさせない
□投稿者/ jinjin (7回)-(2016/12/26(Mon) 14:16:18)
ぶなっぷ 様

> みたく、勝手にWinVMを上書きすんじゃねーってことかな?

はい。そのとおりです。




引用返信 編集キー/
■82280 / inTopicNo.4)  Re[3]: 子ControlのDataContextをバインドさせない
□投稿者/ ぶなっぷ (101回)-(2016/12/27(Tue) 13:06:52)
であれば、手っ取り早いのは、

<UserControl x:Class="MyControl">
<Grid DataContext="{Binding MyControlVM}">
</Grid>
</UserControl>

などとして、MyControl自身ではなく、
その子ウィンドウにDataContextを持たせる方法です。

引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -