Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 7728061
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 1, 20262026-06-01T05:37:19+00:00 2026-06-01T05:37:19+00:00

I am working on a window in which I basically have a listbox (formed

  • 0

I am working on a window in which I basically have a listbox (formed out of Binding to an ObservableCollection). These items have an image, title and other stuff. I want to make the listbox (via itemTemplate) to be formed like a matrix of only the images from my ObservableCollection of items. I’ve used UniformGrid, but the problem is is that I cannot make it to change the number of columns depending on the WindowSize. As an example, I have 10 items. the images have 100 pixels width. The window has 1000 px width. Technically, it should appear 10 items on a row. If I resize the window to, 500 px, i should have 2 rows of 5 images/row. If I grow it to 700 px, it should be one row of 4 images, and the second with 3 images.
If I set the UniformGrid’s Column, then it won’t modify itself when I resize the window. I tried setting the listbox’s HorizontalAlignment or VerticalAlignments to top/center/etc. …
So far, I have come to this:

<ListBox x:Name="ListBoxItems" ItemsSource="{Binding}">
    <ListBox.ItemsPanel>
        <ItemsPanelTemplate>
            <UniformGrid x:Name="UniformGridTest" Columns="?"/>
        </ItemsPanelTemplate>
    </ListBox.ItemsPanel>
    <ListBox.ItemTemplate>
        <DataTemplate>
            <StackPanel>
                <Image Name="ListItemImage" Source="{Binding LocImage.Source}" 
                       RenderOptions.BitmapScalingMode="HighQuality" 
                       MaxHeight="100" MaxWidth="100" Margin="0,0,5,0" 
                       MouseDown="ListItemImage_MouseDown"/>
            </StackPanel>
        </DataTemplate>
    </ListBox.ItemTemplate>
</ListBox>`

I am using a ListBox because I need to have my items selectable.
I hope i explained good enough for you to understand.
Thank you very much!
Adrian.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-01T05:37:20+00:00Added an answer on June 1, 2026 at 5:37 am

    You should try WrapPanel. It will fit so many item as your width allows, the rest will be moved to the next line. Eventually, it should look like what you need. But in this case you’ll have some whitespace at the right on certain width values.

    <ListBox x:Name="ListBoxItems" ItemsSource="{Binding}">
        <ListBox.ItemsPanel>
            <ItemsPanelTemplate>
                <WrapPanel x:Name="WrapPanel"/>
            </ItemsPanelTemplate>
        </ListBox.ItemsPanel>
        <ListBox.ItemTemplate>
            <DataTemplate>
                <StackPanel >
                    <Image Name="ListItemImage" Source="{Binding LocImage.Source}" RenderOptions.BitmapScalingMode="HighQuality" MaxHeight="100" MaxWidth="100" Margin="0,0,5,0" MouseDown="ListItemImage_MouseDown"/>
                </StackPanel>
            </DataTemplate>
        </ListBox.ItemTemplate>
    </ListBox>
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I am working with Windows Forms, is it possible to create a window which
I have the follwing code (which is not working): private void Window_PreviewKeyDown(object sender, KeyEventArgs
Window.open javascript function is not working in Mozilla, but working in other browsers, here
I am working on an app (my first one), which is basically a TabBar
I have created an application which inserts data into a SQL database. Basically, from
I basically have 3 layers ( Window > Scene > View ) that each
Here's the thing... I have 2 GUI programs. A Menu Program,which is basically a
I basically have the core data and the app working correctly except for the
I have made one custom user control (search text box), which basically consists of
I have the following jQuery which basically leaves the div at it's normal CSS

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.