Quantcast
Channel: Windows Presentation Foundation (WPF) forum
Viewing all articles
Browse latest Browse all 18858

Datagrid Horizontal scroll bar not get visible when binded to datatable has more columns and no rows

$
0
0

Hi

I have an scenario to display empty rows with more than 25 columns in display

In this case Horizontal scrollbar not get display, so i can't scroll and see all the columns

when i debug and saw 'ComputedHorizontalScrollBarVisibility' of 'scrollviewer' value is collapsed.

I have attached my sample here

<Window
    x:Class="DataGridScrollBarIssue.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:local="clr-namespace:DataGridScrollBarIssue"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    Title="MainWindow"
    Width="525"
    Height="350"
    mc:Ignorable="d"><Grid><DataGrid
            Name="SampleDataGrid"
            Grid.Row="1"
            CanUserAddRows="False"
            CanUserReorderColumns="False"
            ClipboardCopyMode="IncludeHeader"
            ColumnHeaderHeight="40"
            ColumnWidth="200"
            GridLinesVisibility="All"
            IsReadOnly="True"
            ItemsSource="{Binding DV}"
            RowHeaderWidth="40"
            SelectionMode="Extended"
            SelectionUnit="CellOrRowHeader"></DataGrid></Grid></Window>

using System;
using System.Data;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Controls.Primitives;
using System.Windows.Media;

namespace DataScrollBarIssue
{
    /// <summary>
    /// Interaction logic for MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window
    {
        private DataTable dataTable;
        public DataView DV { get; set; }
        public MainWindow()
        {
            InitializeComponent();
            DV = GenerateDataTable().AsDataView();
            this.DataContext = this;
        }
        DataTable GenerateDataTable()
        {
            dataTable = new DataTable();
            for(int i=0;i<25;i++)
            {
                dataTable.Columns.Add(new DataColumn($"{i+1}"));
            }
            return dataTable;
        }
    }
}
screenshot

Can any one help me to solve this issue?


Devi


Viewing all articles
Browse latest Browse all 18858

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>