2013-02-22 5 views
0

Существует DockPanel, и когда я использую этот код, он добавляет содержимое док-станции вправо Dock, но я не могу его отобразить (т. Е. Выполнить Step1 и Step2 и т. Д.). как видно ниже). Я сделал так много исследований, ничего не сработало. Заранее спасибо за вашу помощь.Как писать внутри содержимого док-станции в C#

public void ShowInstructionForm() 
{ 
    dragDropForm = new DockContent(); 
    dragDropForm.Name = "Hints"; 

    dragDropForm.TabText = "Hints2"; 
    dragDropForm.ShowHint = DockState.DockRight; 
    dragDropForm.BackColor = Color.White; 
    dragDropForm.Text = "- Perform the step number 1 ." 
     + Environment.NewLine + " - Perform the Step number 2";          

    try 
    { 
     dragDropForm.Show(this.oDock.MainDock); 
    } 
    catch (Exception e) 
    { 
     MessageBox.Show(this.oDock.MainDock, "error happened " + e.Message); 
    } 
} 
+0

Должны ли DockPanels быть динамичными? –

+0

Я так не думаю – user1298925

ответ

0

Вы можете пойти в XAML и место TextBlock в в DockPanel, как это:

<DockPanel> 
    <TextBlock Text="- Perform the step number 1 ."/> 
</DockPanel> 
1

Лично я хотел бы использовать привязку данных для достижения того, что именно вы хотите, так что вы пристали к более жесткий дизайн.

XAML

<Window x:Class="WpfApplication1.MainWindow" 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    Title="MainWindow" Height="350" Width="525" 
    DataContext="{Binding RelativeSource={RelativeSource Self}}"> 
    <DockPanel> 
     <TextBlock Text="{Binding Path=Foo}" /> 
    </DockPanel> 
</Window> 

C#

public partial class MainWindow : Window 
{ 
    public string Foo { get; set; } 

    public MainWindow() 
    { 
     Foo = "hello world"; // Changing Foo 'automagically' changes your textblock value 
     InitializeComponent(); 
    } 
} 

Это позволяет быть более гибкими, имея ваш бизнес-логика отделена от кода пользовательского интерфейса. Очевидно, что это всего лишь пример привязки данных с текстовым блоком внутри панели док-станции, но, надеюсь, это дает вам лучшее понимание.