1
현재 막대 그래프로 표시되는 LinearGradientBrush
이 있습니다. 문제는 내 프로그램 (아직 데이터 바인딩에서 값 없음)의 시작에 있습니다. GradientBrush
에는 아직 값이 없기 때문에 화면 전체에 흰색 막대가 나타납니다. 기본값으로 표시합니다.시작시 컨트롤 보이지 않음 (값 없음)/DataTemplate 내부의 액세스 컨트롤
정확히 데이터 바인딩 된 값을 얻을 때까지 아무 것도 표시되지 않도록합니다.
만드는 방법 보이지 않는 값을 얻을 때까지? DataTemplate
과 그 사용되는 itemsControl
의
코드 : 바인딩 데이터가 될 때까지 막대를 숨길 수
<ItemsControl x:Name="icGrafiek"
Margin="0,0,0,0"
ItemsSource="{Binding Source={StaticResource Grafiek}}"
ItemTemplate="{DynamicResource GrafiekItemTemplate}"
RenderTransformOrigin="1,0.5" Grid.RowSpan="6" Grid.Column="1"
<DataTemplate x:Key="GrafiekItemTemplate">
<Grid>
<Border Height="30" Margin="15" Grid.RowSpan="6">
<Border.Background>
<LinearGradientBrush StartPoint="0.0,0" EndPoint="1.0,0">
<GradientStopCollection>
<GradientStop Offset="0.0" Color="{Binding FillBar, UpdateSourceTrigger=PropertyChanged}" />
<GradientStop Offset="{Binding Value, UpdateSourceTrigger=PropertyChanged}"
Color="{Binding FillBar, UpdateSourceTrigger=PropertyChanged}"/>
<GradientStop Offset="{Binding Value, UpdateSourceTrigger=PropertyChanged}"
Color="Transparent"/>
<GradientStop Offset="1" Color="Transparent" />
</GradientStopCollection>
</LinearGradientBrush>
</Border.Background>
</Border>
</Grid>
</DataTemplate>
아마도 값 = "{x : Null}"을 의미합니다. – LPL
흠 나는 숨겨진 막대를 얻지 못했고 {X : Null}도 시도했습니다. Pete에게 감사드립니다. – PeterP
경우에 따라 기본 가시성으로 Collapsed를 사용하고 somevalue == something 일 때 Visibility를 Visible로 설정하여 전환했습니다. – Eirik