Your Privacy Matters: We use our own and third-party cookies to improve your experience on our website. By continuing to use the website we understand that you accept their use. Cookie Policy
225
XamWebGrid 9.2 - ColumnWidth.SizeToHeader issues
posted

Hi,

Bsed on the code below, I am facing the following issue with XamWebGrid 9.2: -

When the ColumnWidth is set to SizeToHeader, the FixedColumnIndicator overlaps last 2-3 alphabets of the column header.

It means that the column header is not completely visible. THIS WAS WORKING FINE WITH INFRAGISTICS 9.1.

Can someone suggest whats causing the problem ? or is it a issue / enhancement in 9.2?

 

Here is the XAML

 

<

 

UserControl xmlns:controlsToolkit="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Toolkit" xmlns:controls="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls" xmlns:igGrid="clr-namespace:Infragistics.Silverlight.Controls;assembly=Infragistics.Silverlight.XamWebGrid.v9.2" x:Class="IG_Samples.MainPage"

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"

 

 

mc:Ignorable="d" d:DesignWidth="640" d:DesignHeight

="480">

 

 

 

<Grid x:Name="LayoutRoot" Background="Aquamarine">

 

 

 

<Grid.ColumnDefinitions>

 

 

 

<ColumnDefinition Width="2*"/>

 

 

 

<ColumnDefinition Width="*"/>

 

 

 

</Grid.ColumnDefinitions>

 

 

 

<Grid.RowDefinitions><RowDefinition Height="25"/><RowDefinition Height="*"/></Grid.RowDefinitions>

 

 

 

<igGrid:XamWebGrid x:Name="igGridRequestDetails" Grid.Row="1" Grid.Column="0" AutoGenerateColumns="True"HorizontalAlignment="Stretch" VerticalAlignment="Top" IsAlternateRowsEnabled="False" ActiveCellChanging="igGridRequestDetails_ActiveCellChanging" ActiveCellChanged="igGridRequestDetails_ActiveCellChanged" InitializeRow="igGridRequestDetails_InitializeRow" PageIndexChanged="igGridRequestDetails_PageIndexChanged" Filtering="igGridRequestDetails_Filtering" GroupByCollectionChanged="igGridRequestDetails_GroupByCollectionChanged" CellEnteringEditMode="igGridRequestDetails_CellEnteringEditMode" CellExitedEditMode="igGridRequestDetails_CellExitedEditMode" CellClicked="igGridRequestDetails_CellClicked" Loaded="igGridRequestDetails_Loaded">

 

 

 

<igGrid:XamWebGrid.GroupBySettings>

 

 

 

<igGrid:GroupBySettings AllowGroupByArea="Top"/>

 

 

 

</igGrid:XamWebGrid.GroupBySettings>

 

 

 

<igGrid:XamWebGrid.SortingSettings>

 

 

 

<igGrid:SortingSettings AllowSorting="True" AllowMultipleColumnSorting="True" ShowSortIndicator="True" />

 

 

 

</igGrid:XamWebGrid.SortingSettings>

 

 

 

<igGrid:XamWebGrid.PagerSettings>

 

 

 

<igGrid:PagerSettings AllowPaging="Bottom" PageSize= "25" />

 

 

 

</igGrid:XamWebGrid.PagerSettings>

 

 

 

<igGrid:XamWebGrid.ColumnMovingSettings>

 

 

 

<igGrid:ColumnMovingSettings AllowColumnMoving="Indicator" />

 

 

 

</igGrid:XamWebGrid.ColumnMovingSettings>

 

 

 

<igGrid:XamWebGrid.FixedColumnSettings>

 

 

 

<igGrid:FixedColumnSettings AllowFixedColumns="DropArea"></igGrid:FixedColumnSettings>

 

 

 

</igGrid:XamWebGrid.FixedColumnSettings>

 

 

 

<igGrid:XamWebGrid.FilteringSettings>

 

 

 

<igGrid:FilteringSettings AllowFilterRow="Top" FilteringScope="ColumnLayout"/>

 

 

 

</igGrid:XamWebGrid.FilteringSettings>

 

 

 

<igGrid:XamWebGrid.EditingSettings>

 

 

 

<igGrid:EditingSettings AllowEditing="Cell" IsMouseActionEditingEnabled="SingleClick" IsEnterKeyEditingEnabled="True" IsF2EditingEnabled="True" IsOnCellActiveEditingEnabled="True" />

 

 

 

</igGrid:XamWebGrid.EditingSettings>

 

 

 

</igGrid:XamWebGrid>

 

 

 

<StackPanel Orientation="Horizontal" HorizontalAlignment="Left" VerticalAlignment="Top" Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="2">

 

 

 

<TextBlock Text="ID" />

 

 

 

<TextBox MinWidth="50" Name="txtID"/>

 

 

 

<TextBlock Text="Name" />

 

 

 

<TextBox MinWidth="150" Name="txtName"/>

 

 

 

<TextBlock Text="Joining Date" />

 

 

 

<controls:DatePicker Name="dtJoiningDate"></controls:DatePicker>

 

 

 

<TextBlock Text="Is Active" />

 

 

 

<CheckBox Name="chkIsActive" IsChecked="False"/>

 

 

 

<Button Content="Add" Click="Button_Click"></Button>

 

 

 

 

 

 

 

</StackPanel>

 

 

 

</Grid>

</

 

UserControl>

 HERE IS THE CODE

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

using

 

 

System;

using

 

 

System.Collections.Generic;

using

 

 

System.Collections.ObjectModel;

using

 

 

System.Linq;

using

 

 

System.Net;

using

 

 

System.Windows;

using

 

 

System.Windows.Controls;

using

 

 

System.Windows.Documents;

using

 

 

System.Windows.Input;

using

 

 

System.Windows.Media;

using

 

 

System.Windows.Media.Animation;

using

 

 

System.Windows.Shapes;

using

 

 

Infragistics.Silverlight;

using

 

 

Infragistics.Silverlight.Controls;

using

 

 

Infragistics.Silverlight.Controls.Primitives;

namespace

 

 

IG_Samples

{

 

 

public partial class MainPage :

UserControl

{

 

 

ObservableCollection<MyDataSource> objSource = new ObservableCollection<MyDataSource

>();

 

 

public

MainPage()

{

InitializeComponent();

BindData();

}

 

 

public void

BindData()

{

 

 

 

for (int

i = 1; i <= 100; i++)

{

objSource.Add(

 

new MyDataSource() { id = i, isactive=true, joiningDate= DateTime.Today.AddDays(1), name ="test - "

+ i.ToString() });

}

 

 

this

.igGridRequestDetails.ItemsSource = objSource;

}

 

 

private void igGridRequestDetails_ActiveCellChanging(object sender, Infragistics.Silverlight.ActiveCellChangingEventArgs

e)

{

}

 

 

private void igGridRequestDetails_ActiveCellChanged(object sender, EventArgs

e)

{

}

 

 

private void igGridRequestDetails_InitializeRow(object sender, Infragistics.Silverlight.InitializeRowEventArgs

e)

{

}

 

 

private void igGridRequestDetails_PageIndexChanged(object sender, Infragistics.Silverlight.PageChangedEventArgs

e)

{

}

 

 

private void igGridRequestDetails_Filtering(object sender, Infragistics.Silverlight.CancellableFilteringEventArgs

e)

{

}

 

 

private void igGridRequestDetails_GroupByCollectionChanged(object sender, Infragistics.Silverlight.GroupByCollectionChangedEventArgs

e)

{

}

 

 

private void igGridRequestDetails_CellEnteringEditMode(object sender, Infragistics.Silverlight.BeginEditingCellEventArgs

e)

{

}

 

 

private void igGridRequestDetails_CellExitedEditMode(object sender, Infragistics.Silverlight.CellExitedEditingEventArgs

e)

{

}

 

 

private void igGridRequestDetails_CellClicked(object sender, Infragistics.Silverlight.CellClickedEventArgs

e)

{

}

 

 

private void igGridRequestDetails_Loaded(object sender, RoutedEventArgs

e)

{

 

 

int count = this

.igGridRequestDetails.ColumnTypeMappings.Count;

 

 

for (int

i = count - 1; i >= 0; i--)

{

 

 

if (this.igGridRequestDetails.ColumnTypeMappings[i].DataType == typeof(DateTime

))

{

 

 

this.igGridRequestDetails.ColumnTypeMappings[i].ColumnType = typeof(TextColumn

);

}

 

 

else if (this.igGridRequestDetails.ColumnTypeMappings[i].DataType == typeof(DateTime

?))

{

 

 

this.igGridRequestDetails.ColumnTypeMappings[i].ColumnType = typeof(TextColumn

);

}

}

 

}

 

 

private void Button_Click(object sender, RoutedEventArgs

e)

{

 

 

this.objSource.Add(new MyDataSource() { id = int.Parse(this.txtID.Text), name = this.txtName.Text, joiningDate = DateTime.Parse(this.dtJoiningDate.Text), isactive = bool

.Parse(chkIsActive.IsChecked.ToString())});

}

}

 

 

public class

MyDataSource

{

 

 

public int id { get; set

; }

 

 

public DateTime joiningDate { get; set

; }

 

 

public string name { get; set

; }

 

 

 

public bool isactive { get; set

; }

Parents
No Data
Reply
  • 21382
    posted

    I am not sure what you are seeing with this sample, because AllowFixedColumns was set to DropArea and ColumnWidth was set to (well it was not set so it is AutoInit by default).

    Under these conditions you would not see a fixed column marker.  You would see a SortIndicator which would cover up the text, but this is because AutoInit sets the column width when it renders so sorting tries to shoe horn an extra UI element into a given width.

     

    Setting the ColumnWidth to Auto would eliminate this issue.

Children