ListViewItem एक ListView की चौड़ाई तक नहीं बढ़ेगा


81

मैं वर्तमान में XAML का उपयोग करके एक विंडोज़ 8 स्टोर ऐप डिज़ाइन कर रहा हूं, लेकिन मेरे पास एक छोटा आकार का मुद्दा है। मैं एक DataTemple के साथ एक सूची दृश्य है।

मेरे ListView और DataTemplate के लिए कोड नीचे हैं:

<ListView x:Name="listPageItems"
          Grid.Row="1"
          SelectionMode="Extended"
          IsSwipeEnabled="False"
          ItemsSource="{Binding Mode=OneWay, Source={StaticResource items}}"
          ItemTemplate="{StaticResource NavigationItemTemplate}"
          ScrollViewer.VerticalScrollBarVisibility="Visible">

</ListView>

<DataTemplate x:Key="NavigationItemTemplate">    
        <Grid Height="75">
            <Grid.RowDefinitions>
                <RowDefinition Height="1.6*" />
                <RowDefinition Height="*" />
            </Grid.RowDefinitions>
            <Rectangle Fill="White" />
            <Rectangle Fill="{StaticResource SSEGreenBrush}"
                       Grid.Row="1" />
            <Border BorderThickness="2"
                    BorderBrush="{StaticResource SSEGreenBrush}"
                    Grid.RowSpan="2" />
            <TextBlock x:Name="textTitle"
                       Text="{Binding ClientName}"
                       Style="{StaticResource TitleTextStyle}"
                       Foreground="{StaticResource SSEBlueBrush}"
                       Margin="10,5,5,5" />
            <StackPanel Orientation="Horizontal"
                        Grid.Row="1"
                        HorizontalAlignment="Stretch">
                <TextBlock Text="Last Edit :"
                           Style="{StaticResource SubtitleTextStyle}"
                           Foreground="{StaticResource SSEBlueBrush}"
                           Margin="3,0,0,3"
                           VerticalAlignment="Center" />
                <TextBlock Text="SurveyDate"
                           Style="{StaticResource SubtitleTextStyle}"
                           Foreground="{StaticResource SSEBlueBrush}"
                           Margin="3,0,0,3"
                           VerticalAlignment="Center" />
            </StackPanel>
        </Grid>
    </DataTemplate>

सूची २४० की निश्चित चौड़ाई के साथ एक ग्रिड कॉलम के भीतर है।

जब दृश्य प्रदर्शित होता है तो ListViewItems ListView की चौड़ाई तक नहीं बढ़ता है। मैंने कई गुणों को सेट करने की कोशिश की है, जिसमें HoroscopeContentAlignment भी शामिल है, लेकिन मैं खिंचाव देखने के लिए ListViewItem प्राप्त नहीं कर सकता!

क्या कोई मदद कर सकता है?

अग्रिम में धन्यवाद।

मैं विज़ुअल स्टूडियो 2012, C # 4.5 का उपयोग कर रहा हूं और एक विंडोज़ स्टोर ऐप विकसित कर रहा हूं।

जवाबों:


197

अपनी ListView परिभाषा में निम्नलिखित को जोड़ने का प्रयास करें

<ListView.ItemContainerStyle>
    <Style TargetType="ListViewItem">
        <Setter Property="HorizontalContentAlignment" Value="Stretch" />
    </Style>
</ListView.ItemContainerStyle>

1
त्रुटि: बाइंडिंगएक्सप्रेशन पथ त्रुटि: प्रोजेक्ट पर 'चौड़ाई' गुण नहीं मिला। बाइंडिंग एक्सप्रेशन: पथ = 'चौड़ाई' DataItem = Project.CustomElement, Project.WindowsPhone, संस्करण = 1.0.0.0, संस्कृति = तटस्थ, PublicKeyToken = null '; लक्ष्य तत्व 'Windows.UI.Xaml.Controls.Grid' (नाम = 'null') है; लक्ष्य संपत्ति 'चौड़ाई' (टाइप 'डबल')
ब्लैक सिड

2
DataTemplate में ऐसे तत्व जो स्वचालित रूप से पूरी चौड़ाई तक नहीं खिंचते हैं जैसे ग्रिड उदाहरण के लिए करता है, आपको इसके अलावा क्षैतिज क्षैतिज सेट = "स्ट्रेच"
tipa

मैं एक टिप्पणी भी जोड़ना चाहूंगा कि मुझे यह काम करने के लिए नहीं मिल सकता है जब मैंने क्षैतिज क्षैतिजता = "वाम" को भी सेट किया था, लेकिन जब मैंने इसे हटा दिया, तो यह एक आकर्षण की तरह काम करता था!
एंड्रियास फोर्स्लोव
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.