WPF Datepicker показывает содержимое ближайшего текстового блока - PullRequest
0 голосов
/ 10 июля 2020

кто-нибудь понял, почему datepicker показывает содержимое ближайшего ярлыка? Отображаемая метка находится в другой сетке. Когда я удаляю текст меток и оставляю его пустым, отображается текст следующей метки сетки и т. Д.

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

[РЕДАКТИРОВАТЬ] Извините, следуя части кода.

     <StackPanel Grid.Row="1" Grid.Column="0">

        <Grid  Margin="10,10,0,0">
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="Auto"/>
                <ColumnDefinition Width="*"/>
            </Grid.ColumnDefinitions>
            <Grid.RowDefinitions>
                <RowDefinition Height="Auto"/>
                <RowDefinition Height="Auto"/>
                <RowDefinition Height="Auto"/>
            </Grid.RowDefinitions>
            
            <Label Content="Beauftragt durch:"  
                       Grid.Row="0" Grid.Column="0" 
                       Width="110" Margin="10,2"
                       HorizontalAlignment="Left" />
            <TextBox x:Name="OrderedByEmp"
                       IsEnabled="False"
                       Text="{Binding OrderedByEmpName}"
                       Grid.Row="0" Grid.Column="1" 
                       Width="110" Margin="10,2"
                     />

            <Label Content="Projekt:"  
                       Grid.Row="1" Grid.Column="0" 
                       Width="110" Margin="10,2"
                       HorizontalAlignment="Left" />
            <TextBox x:Name="Project" 
                     MaxLength="10"
                       Text="{Binding Project}"
                         Grid.Row="1" Grid.Column="1" 
                       Width="110" Margin="0,2"
                     />

            <Label Content="Auftrag:"  
                       Grid.Row="2" Grid.Column="0" 
                       Width="110" Margin="10,2"
                       HorizontalAlignment="Left" />
            <TextBox x:Name="Order" Text="{Binding Commission}"
                       MaxLength="8"
                       Grid.Row="2" Grid.Column="1" 
                       Width="110" Margin="0,2"
                     />
        </Grid>
    </StackPanel>

    <StackPanel Grid.Row="1" Grid.Column="1">
        <Grid  Margin="10,10,0,0">
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="Auto"/>
                <ColumnDefinition Width="Auto"/>
            </Grid.ColumnDefinitions>
            <Grid.RowDefinitions>
                <RowDefinition Height="Auto"/>
                <RowDefinition Height="Auto"/>
                <RowDefinition Height="Auto"/>
            </Grid.RowDefinitions>

            <Label Content="Erstellt am:"  
                       Grid.Row="0" Grid.Column="0" 
                       Width="110" Margin="10,2"
                       HorizontalAlignment="Left" />
            <TextBox x:Name="OrderDate" Text="{Binding OrderDate, Mode=TwoWay,StringFormat='{}{0:dd.MM.yyyy}'}"
                        IsEnabled="False"
                       Grid.Row="0" Grid.Column="1" 
                       Width="110" Margin="0,2"
                     />
            
            <Label Content="Benötigt bis:"  
                       Grid.Row="1" Grid.Column="0" 
                       Width="110" Margin="10,2"
                       HorizontalAlignment="Left" />
            <DatePicker x:Name="ExpectedFinishDate" 
                       Grid.Row="1" Grid.Column="1" 
                        Width="110"></DatePicker>

            <Label Content="Abteilung:"  
                       Grid.Row="2" Grid.Column="0" 
                       Width="110" Margin="10,2" />
            <ComboBox x:Name="Departments" Grid.Row="2" Grid.Column="1">
                <ComboBox.ItemTemplate>
                    <DataTemplate>
                        <Label Content="{Binding Bezeichnung}" />
                    </DataTemplate>
                </ComboBox.ItemTemplate>
            </ComboBox>
        </Grid>
    </StackPanel>

    <StackPanel Grid.Column="2" Grid.Row="1">
        <Grid Margin="10,10,2,2">
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="Auto"/>
                <ColumnDefinition Width="Auto"/>
            </Grid.ColumnDefinitions>
            <Grid.RowDefinitions>
                <RowDefinition Height="*"/>
                <RowDefinition Height="*"/>
                <RowDefinition Height="*"/>
            </Grid.RowDefinitions>

            <TextBlock Grid.Row="0" Grid.Column="0" 
                       VerticalAlignment="Center" HorizontalAlignment="Right">
                       FLAG:
            </TextBlock>
            <Image Grid.Row="0" Grid.Column="1" Height="20" Source="/Pictures/NotStartetButton.png" />

            <Label Content="Fertiggestellt am:"  
                       Grid.Row="1" Grid.Column="0" 
                       Width="110" Margin="10,2"
                       HorizontalAlignment="Left" />
            <TextBox x:Name="FinishDatetime" 
                     IsEnabled="False"
                      Grid.Row="1" Grid.Column="1" 
                       Width="110" Margin="0,2"
                     />

            <Label Content="Fertiggestellt durch"  
                       Grid.Row="2" Grid.Column="0" 
                       Width="110" Margin="10,2"
                       HorizontalAlignment="Left" />
            <TextBox x:Name="FinishedByEmp" 
                     IsEnabled="False"
                       Grid.Row="2" Grid.Column="1" 
                       Width="110" Margin="0,2"
                     />
        </Grid>
    </StackPanel>

Как только форма загрузится

Когда я помещаю указатель даты в другое место, он работает правильно.

Пытался часами выяснить, почему ... но не могу найти причину.

Спасибо за все предложение!

1 Ответ

0 голосов
/ 16 июля 2020

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

Но, наконец, я внес столько изменений, что проблема просто исчезла .

...