1

私はデザイナーでフォームを作成し、必要な場合にのみ XAML を手動で変更することに慣れています。

拡張ツールキットはすばらしいライブラリですが、Visual Studio のデザイナとの統合にはまだ欠けています。ツールキットのコントロールは、標準コントロールのように (ツールボックスではなく)デザイナに表示できますか? そうでない場合、説明はありますか?

今のところ、ツールキットのコントロールは空白で、クリックするだけでは選択できません。

注: この問題は、コンテナー コンポーネント (BusyIndi​​cator や Wizard/WizardPage など) でのみ発生するようです。

編集: これが私の XAML の一部です。これで、ウィザードの最初のページを見ることができますが、他のページを見る明白な方法はありません。ウィザードを BusyIndi​​cator に入れると、何も見えなくなります。

<Window x:Class="MyProgram.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:local="clr-namespace:MyProgram"
        xmlns:xctk="http://schemas.xceed.com/wpf/xaml/toolkit"
        Title="My Program" Height="477" Width="688" MinWidth="688" MinHeight="478">
    <xctk:Wizard x:Name="wizard" FinishButtonClosesWindow="True" Next="wizard_Next">
        <xctk:WizardPage Name="Intro_Page"  Title="ABC" Description="abc" NextPage="{Binding ElementName=Second_Page}" Enter="disallowNext">
            <xctk:WizardPage.Content>
                <Grid>
                    <Label Content="abc" HorizontalAlignment="Center" Margin="0,54,0,87" Name="intro_lbl" VerticalAlignment="Center" Grid.Column="1" Padding="5" HorizontalContentAlignment="Center" Height="28" IsEnabled="False" />
                 </Grid>
            </xctk:WizardPage.Content>
        </xctk:WizardPage>
        <xctk:WizardPage Name="Second_Page" Title="DFG" Description="dfg" NextPage="{Binding ElementName=Last_Page}">
            <xctk:WizardPage.Content>
                <Grid Name="grid">
                    <TextBox Grid.Column="1" Height="23" HorizontalAlignment="Stretch" Name="txt_second" VerticalAlignment="Center" />
                </Grid>
            </xctk:WizardPage.Content>
        </xctk:WizardPage>
        <xctk:WizardPage Name="Last_Page" PageType="Interior"
                         Title="Last Page"
                         Description="This is the last page in the process"
                         CanFinish="True" />
    </xctk:Wizard>
</Window>
4

1 に答える 1

1

私はこの答えが遅れていることを知っていますが、昨日私はこの問題につまずいていたので、ここに着陸した他の人にとって役立つかもしれません.

から派生した独自のコントロールを作成することで解決しましたWizardPage。新しい を作成し、Xceed.Wpf.Toolkit 名前空間を含め、xamlファイルとコード ビハインド ファイルでUserControlType を から に変更するUserControlだけです。xctk:WizardPage

<xctk:WizardPage x:Class="WizardTest.MyWizardPage"
             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"
             xmlns:xctk="clr-namespace:Xceed.Wpf.Toolkit;assembly=Xceed.Wpf.Toolkit"
             xmlns:local="clr-namespace:WizardTest"
             mc:Ignorable="d" 
             d:DesignHeight="300" d:DesignWidth="300">
  <Grid>
    <TextBlock>Hello World!</TextBlock>
  </Grid>
</xctk:WizardPage>

これで、VisualStudio Designer を使用して UI を作成できます。ページをウィザードに配置するには、派生したページのオブジェクトをそのアイテムに配置するだけです。

<xctk:Wizard>
  <local:MyWizardPage Title="My Wizard Page"/>
</xctk:Wizard>

オブジェクトがウィザードに自動的に設定されるため(明示的に指定されていない場合は Window から継承されます) 、Bindungsそのままコスチューム ページで使用できます。DataContextMyWizardPageDataContextDataContext

于 2016-01-21T08:08:15.853 に答える