WPFに固有のF#を使用していることに注意してください。どのような深さでコントロールの子のDataContextを設定するために何をすべきですか?どのようにデータコンテキストを "TargetControl"という名前で制御するかを設定する。問題のコンテキスト:DataContextを継承する方法
App.xaml:
<Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
>
<Frame Name="Frame" Source="MainWindow.xaml" />
</Window>
MainWindow.xaml:
<UserControl xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Grid>
<TabControl Grid.Row="0" Grid.Column="0" Name="mainTab">
<!-- Tests work area -->
<TabItem Header="Проверка проекта">
<Frame Source="TestsPropagate.xaml" />
</TabItem>
</TabControl>
</Grid>
</UserControl>
TestsPropagate.xaml
<UserControl
Name="TargetControl"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<TextBox Text="{Binding Path=testField}" />
</UserControl>
このキャップを開始するために私のブートローダー:
[<STAThread>]
[<EntryPoint>]
let main(_) = //(new Application()).Run(Application.Current) //mainWindowViewModel)
OFTD.DOM.ExtraEntities.Verification.EnitiesInitializer.InitializeReaders()
let app = new Application()
let view = Application.LoadComponent(new System.Uri("App.xaml", UriKind.Relative)) :?> Window
let vm = new AppViewModel() // is data context to TargetControl
app.Run(view)
うわー、WPFとF#は、あなたが – GONeale
は、今、私は唯一のプログラムのカーネル内のF#を使用:)勇敢ビューモデルを実装することができます。次に、C#コード(コードビハインド)でビューモデルを展開し、F#のビューモデルでC#でWPFを使用します:) – psct