在後面的代碼,我們設置窗口背景的ImagePath的,有沒有什麼辦法讓在XAML此值,並用它來設置背景圖片WPF如何讓代碼隱藏變量的XAML
0
A
回答
2
在最好的情況下,後面的代碼是空的或者只是InitializeComponent存在。
因此,我將重點介紹一種完成此操作的方法,並讓 未來的變化變得非常簡單!
您可以輕鬆地爲您的窗口設置DataContext(例如在代碼隱藏中)。
從這個DataContext(當這個 路徑將改變時應該實現INotifyPropertyChanged),你可以很容易地綁定到任何你想要的。
這裏是一個小例子:
// ViewModel class containing ImagePath
public class WindowBackgroundViewModel : INotifyPropertyChanged
{
public string ImagePath { get; set; }
}
// in Codebehind
public WindowBackgroundViewModel ViewModel { get; set; }
// in Constructor
public myWindow()
{
this.ViewModel = new WindowBackgroundViewModel();
this.ViewModel.ImagePath = @"C:\myBackground.png";
this.DataContext = this.ViewModel;
}
// in XAML
<... ImageBackground="{Binding Path=ImagePath}"
1
我雖然不是與背景圖像顯示,但仍下面結合應該是適用於您的情況:
XAML
<TextBox DataContext="{Binding RelativeSource={RelativeSource AncestorLevel=1,AncestorType=Window}}"
Text="{Binding MyProperty}" Width="200" Height="50"/>
C#
public partial class MainWindow : Window
{
public string MyProperty { get; set; }
public MainWindow()
{
InitializeComponent();
MyProperty = "Sample";
}
}
希望這應該對你有幫助!
相關問題
- 1. XAML代碼隱藏
- 2. WPF代碼隱藏
- 3. 從代碼隱藏到XAML
- 4. 如何通過WPF中的c#代碼隱藏來編寫逐字XAML代碼?
- 5. WPF:使用不同的代碼隱藏相同的xaml文件
- 6. WPF:如何從後面變量的代碼在XAML
- 7. WPF的ItemsSource工作在代碼隱藏而不是在XAML
- 8. WPF更改Xaml中基於代碼隱藏屬性的顏色
- 9. 試圖讓vb.net代碼隱藏的JavaScript變量
- 10. WPF代碼隱藏等效
- 11. WPF ItemsControl.ItemsTemplate代碼隱藏
- 12. 的Silverlight XAML:引用代碼隱藏類
- 13. C# - WPF - 連接代碼隱藏與XAML元素
- 14. WPF:在XAML中設置ItemSource與代碼隱藏
- 15. XAML綁定到代碼隱藏類屬性集合爲空(WPF)
- 16. 在代碼隱藏(WPF)訪問XAML對象
- 17. 訪問代碼隱藏變量
- 18. 在Scala源代碼中隱藏變量
- 19. 使用代碼隱藏變量值
- 20. 代碼隱藏找不到XAML
- 21. 訪問XAML對象代碼隱藏
- 22. MVVM:將代碼隱藏轉換爲XAML
- 23. XAML無法識別類代碼隱藏
- 24. XAML UI更新代碼隱藏
- 25. XAML繼承(沒有代碼隱藏)
- 26. 如何隱藏分佈式代碼的變量
- 27. 如何從ascx的代碼隱藏中訪問javascript變量?
- 28. 如何在XAML中使用Hub的代碼隱藏?
- 29. 如何更改我的代碼隱藏綁定到XAML綁定
- 30. 如何在代碼隱藏中訪問會話變量