2014-06-05 49 views
1

我有WPF窗口代碼,我想改變窗口標題,一般情況下我可以做訪問原始覆蓋變量

this.Title = "Bla" 

但是,如果在窗口代碼的XAML的一部分,我有一個文本框中命名標題(名稱=「標題」),它覆蓋默認窗口標題變量設置窗口的標題?如何訪問原始窗口標題變量而不必重命名文本框?

+0

你爲什麼要這麼做?只需重命名您的文本框就像這樣「txtTitle」 – CodeNotFound

+0

我想你會遇到一個錯誤,試圖調用你的'文本框''標題',因爲它引入了命名衝突。解決這個問題時不會這麼做。 – Servy

回答

0

第一個解決方案。

您可以使用關鍵字base

base.Title = "bla"; 

二的解決方案。

您可以通過將發件人對象轉換爲Window來更改Loaded事件中的窗口標題。

XAML:

<Window x:Class="WpfWindow.MainWindow"   
     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
     Title="title" Height="350" Width="525" 
     Loaded="Window_Loaded"> 
    <Grid> 
     <TextBox Name="Title" MinWidth="100" /> 
    </Grid> 
</Window> 

代碼隱藏:

public partial class MainWindow : Window 
{ 
    public MainWindow() 
    { 
     InitializeComponent(); 
    } 

    private void Window_Loaded(object sender, RoutedEventArgs e) 
    { 
     (sender as Window).Title = "bla"; 
    } 
}