PDA

View Full Version : چطور یه ListView به این شکل درست کنم تو WPF ؟



mdssoft
دوشنبه 14 دی 1388, 20:58 عصر
سلام به دوستان.
من می خوام یه ListView توسط کدهای XAML یا C# به شکل زیر تو WPF درست کنم :

http://xs.to/image-A835_4B3EF7EE.jpg

میشه منو راهنمایی کنید ؟
ممنون از شما.

Somayeh_Zamani
چهارشنبه 16 دی 1388, 21:31 عصر
سلام به دوستان.
من می خوام یه ListView توسط کدهای XAML یا C#‎ به شکل زیر تو WPF درست کنم :

http://xs.to/image-A835_4B3EF7EE.jpg

میشه منو راهنمایی کنید ؟
ممنون از شما.

سلام
اگه به من باشه، داخل listview ابتدا یک StackPanel میذارم که خاصیت Orientation اون، Verticalهست و داخلش هم به ازای هر خط، یک Stackpanel دیگه می ذاشتم که خاصیت Orientation اون Horizontal هست و داخلش هر چی بخوام رو میچینم

موفق باشید:چشمک:

mdssoft
چهارشنبه 16 دی 1388, 22:08 عصر
مگه چنین چیزی میشه !
بعد نحوه select کردن این آیتم ها چه میشه !
میشه یه نمونه کد XAML بزارید ؟

رضا عربلو
چهارشنبه 16 دی 1388, 23:32 عصر
شما می توانید در پراپرتی ListView.View یک گرید ویو قرار بدهی و بعد باقی ماجرا.

در اینجا یک مثال کانل ذکر شده است:

http://www.switchonthecode.com/tutorials/wpf-tutorial-using-the-listview-part-1

mdssoft
چهارشنبه 16 دی 1388, 23:41 عصر
رفقا شما منظور منو نگرفتین.
آقای عربلو من این مقاله ای رو که لینک دادید کامل قبلا خوندم. اما اینی که من می خوام رو نمیشه باهاش در آورد.
من تونستم ListView رو در بیارم :


<ListView x:Name="ListView1" Background="#FFEEF3FA" GridViewColumnHeader.Click="ListViewSort_Click" ItemsSource="{Binding ListViewItemsCollections}" SelectionChanged="ListView1_SelectionChanged">
<ListView.View>
<GridView>
<GridViewColumn x:Name="GridViewColumnName" Header="Name" Width="200" DisplayMemberBinding="{Binding GridViewColumnName}" />
<GridViewColumn x:Name="GridViewColumnTags" Header="Tags" Width="100" DisplayMemberBinding="{Binding GridViewColumnTags}" />
<GridViewColumn x:Name="GridViewColumnLocation" Header="Location" Width="238" DisplayMemberBinding="{Binding GridViewColumnLocation}" />
</GridView>
</ListView.View>
</ListView>

اما با این مقاله (http://www.switchonthecode.com/tutorials/wpf-tutorial-using-the-listview-part-1) فقط میشه string به ستون های listView اضافه کرد.
من می خوام تو ستون اول علاوه بر string یه image هم اضافه کنم ( توسط C# )
من مشکلم اینه !

Somayeh_Zamani
چهارشنبه 16 دی 1388, 23:54 عصر
<ListView HorizontalAlignment="Left" Name="listView1" SelectionMode="Single">
<ListView.View>
<GridView>
<GridViewColumn Header="Names">
<GridViewColumn.CellTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<Image Source="/./Images/add.png" MaxWidth="30" MaxHeight="30" />
<TextBlock Text="myName"/>
</StackPanel>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
<GridViewColumn Header="Tags">
<GridViewColumn.CellTemplate>
<DataTemplate>
<TextBlock Text=""/>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
<GridViewColumn Header="Location">
<GridViewColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="http://www.yahoo.com"/>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
</GridView>
</ListView.View>
</ListView>

mdssoft
پنج شنبه 17 دی 1388, 10:01 صبح
ممنون از شما.
اما ما چطور می تونیم این کار رو توسط C# و به صورت دینامیک انجام بدیم.
منظورم اینه که مثلا می خواهیم چند آیتم رو توسط C# و یه حلقه به این ListView اضافه کنیم ، اینجا چطور باید عمل کنیم ؟

Somayeh_Zamani
پنج شنبه 17 دی 1388, 10:28 صبح
کد بالا رو که همین طوری هارد کد نوشتم رفت. شما هر کار دیگه ای بخواهید می شه انجام بدید. شما کنترل های داخلشو بایند کن. اگه مثلا با یه دستور query، linq بگیری و ItemSource اون listView رو برابر جواب query قرار بدی، کارت راه نمی افته؟

Mahdi.Kiani
پنج شنبه 17 دی 1388, 13:38 عصر
سلام
دوستان تقاضا مندم این بخش (WPF) را نیز به مانند اکثر بخش های این سایت از سوالات ساده و مبتدیانه که نشان از مطالعه نکردن در مورد این تکنولوژی می باشد، پر نکنید.
کاربر mdssoft اگر در مورد DataTemplate در گوگل جستجو می کردید نمونه هایی در خود سایت ماکروسافت برای شما لیست می شد. سایر سایت ها بماند!
موفق باشید.