2016-12-10 58 views
0

我正在運行時在主窗口上加載用戶控件的WPF應用程序上工作。無法編輯用戶控件中的TextBox WPF

我有一個應用程序中的TextBox應該是一個可編輯的文本框。但我無法使用鍵盤輸入進行編輯。而我能夠務實地設置文本。

關於這個問題,我已經提到MSDN forum。儘管如此,我仍然無法完成。我的代碼與上面鏈接中的代碼類似。

請分享您的想法來完成這件事。

在此先感謝。

編輯:

XAML代碼:

<UserControl x:Class="UserControl" 
     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
     xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
     xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
     mc:Ignorable="d" 
     Loaded="UserControl_Loaded" 
     FocusManager.IsFocusScope="True" 
     FocusManager.FocusedElement="{Binding ElementName=TestTxt}"> 

<Grid FocusManager.IsFocusScope="True"> 
    <StackPanel Orientation="Horizontal" FocusManager.IsFocusScope="True"> 
     <TextBox x:Name="TestTxt" IsReadOnly="False" IsEnabled="True" FocusManager.IsFocusScope="True"/> 
    </StackPanel> 
</Grid> 

+0

你能解釋更多。通過「無法輸入」你的意思是它被禁用?檢查文本框的IsEnable屬性。 – Emad

+0

在這裏發佈你的代碼 – Sajeetharan

+0

@Emad:它沒有被禁用。它不需要鍵盤輸入。我已確保文本框已啓用,並且「IsReadOnly」已設置爲false。 – sam

回答

0

UserControl_Loaded添加TestTxt.Focus();

+0

仍然面臨這個問題@swiszcz – sam

+0

然後,你需要在這裏發佈一個完整的例子。我已經創建了一個新的WPF應用程序項目,我添加了一個用戶控件,並從中複製了xaml,並在UserControl_Loaded(和MainWindow.xaml中添加了TestTxt.Focus()後添加了FocusManager.FocusedElement =「{Binding ElementName = TheNameOfUserControl}「),我可以輸入到文本框中, –

+0

我發現了這個問題的根本原因。這是一個媒體流應用程序。由於視頻流,我無法更新用戶界面。有什麼辦法可以完成這個任務嗎? – sam