Pobranie wysokości z kontrolki Parenta

0

Witam,

mam taki problem: w oknie posiadam 2 kontrolki, chcę w jednej z nich uzależnić wartość wysokości od wysokości kontrolki w oknie parenta + wykonać na nim pewne działanie.

Wykonalne?

<Window x:Class="WpfApplication13.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:proj="clr-namespace:WpfApplication13"
        Title="MainWindow" Height="350" Width="525">
    <Grid>
        <StackPanel>
        <proj:Kontrolka1/>
        <proj:Kontrolka2/>
        </StackPanel>
    </Grid>
</Window>
<UserControl>
    <Grid ShowGridLines="True" Name="kontrolka1">
        <TextBlock Text="AAAAAAAAAAAAAA" Height="300" Background="Green"/>
    </Grid>
</UserControl>
<UserControl>
    <Grid>
        <TextBlock Text="BBBBBBBBBBB" Background="Aqua" Height="{Binding Path=ActualHeight - 100, ElementName=kontrolka1}"/>
    </Grid>
</UserControl>
  1. Czy jest wykonalne wczytanie wysokości z okna parenta?
  2. Czy jest możliwość przeliczania wartości ( tu ActualHeight - 100 ) inaczej niż przez użycie konwertera(w xaml-u)?

Nie mogę modyfikować Window.

Z góry dziękuję za wszystkie wskazówki.

0

Co do pierwszego rozumiem że chcesz aby ten TextBlock miał taka wysokość jak UserControl

<TextBlock Height="{Binding Path=Height, RelativeSource={RelativeSource AncestorType={x:Type Grid}}}"/>

Co do drugiego, zdaje się że nie.
Czemu nie możesz modyfikować okna głównego?

0

ad1. Nie do końca, chodzi mi o to, żeby TextBlock w Kontrolka2 miał wysokość TextBlock z Kontrolka1.
ad2. Ponieważ elementy są tam wstawiane dynamicznie, a ja chcę żeby tylko 1 z nich miał taką właściwość.

0

Podbijam. Any help?

1 użytkowników online, w tym zalogowanych: 0, gości: 1