Autor Beitrag
Cjreek
Hält's aus hier
Beiträge: 13

Windows 7 64-Bit
C# (VS 2013), Delphi 2010
BeitragVerfasst: Mi 23.12.15 11:37 
Hallo,

Habe mein Problem auf folgendes reduziert:
Ein Usercontrol mit einer eigenen Content-Property namens "BaseContent":

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
public partial class DummyUC : UserControl
{
  public static readonly DependencyProperty BaseContentProperty = DependencyProperty.Register("BaseContent"typeof(object), typeof(DummyUC));

  public object BaseContent
  {
    get { return GetValue(BaseContentProperty); }
    set { SetValue(BaseContentProperty, value); }
  }

  public DummyUC()
  {
    InitializeComponent();
  }
}


Dazu die xaml:

ausblenden XML-Daten
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
<UserControl x:Class="TestProjekt.DummyUC"
             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:local="clr-namespace:TestProjekt"
             mc:Ignorable="d" 
             d:DesignHeight="300" d:DesignWidth="300">
    <Grid>
        <ContentPresenter Content="{Binding RelativeSource={RelativeSource AncestorType=local:DummyUC}, Path=BaseContent}"/>
    </Grid>
</UserControl>


Nun habe ich mein Usercontrol in einem Window eingebunden und den BaseContent gesetzt:

ausblenden XML-Daten
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
<Window
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        x:Name="window" x:Class="TestProjekt.MainWindow"
        xmlns:local="clr-namespace:TestProjekt"
        Title="TestWindow" Height="444" Width="671.5">
    <Grid>
        <local:DummyUC>
            <local:DummyUC.BaseContent>
                <Button Background="Red"/>
            </local:DummyUC.BaseContent>
        </local:DummyUC>
    </Grid>
</Window>


Zur Laufzeit funktioniert das wunderbar. Zur Designtime sehe ich gar nichts. :nixweiss: