|
|
|
Sorry I read the article you suggested and still have so questions - I posted the question 1 here but nobody is picking up...[^]
Think you can have a quick look please?
dev
|
|
|
|
|
|
Good afternoon.
I have an WPF application with a grid consisting of two rows and two columns, containing players.
My problem is that I would change at runtime the layout of the grid. Such as leaving only one row and one column or two rows with a column...
From the code behind, I haven´t the ability to access or the colspan rowSpan ...
It is possible to do this functionality with the grid? or there is another control that allows me to change the arrangement of the players at runtime?
Thank you very much in advance
<Grid Name="MainGrid">
<Grid.RowDefinitions >
<RowDefinition Height="*" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions >
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<dbf:DbfPlayerUserControl x:Name="player1" Grid.Column="0" Grid.Row="0" ></dbf:DbfPlayerUserControl>
<dbf:DbfPlayerUserControl x:Name="player2" Grid.Column="1" Grid.Row="0" ></dbf:DbfPlayerUserControl>
<dbf:DbfPlayerUserControl x:Name="player3" Grid.Column="0" Grid.Row="1" ></dbf:DbfPlayerUserControl>
<dbf:DbfPlayerUserControl x:Name="player4" Grid.Column="1" Grid.Row="1" ></dbf:DbfPlayerUserControl>
</Grid>
|
|
|
|
|
You mean something like:
player1.SetValue(Grid.ColumnProperty,1);
|
|
|
|
|
myGrid.SetValue(Grid.RowSpanProperty, intSpan);
The funniest thing about this particular signature is that by the time you realise it doesn't say anything it's too late to stop reading it.
|
|
|
|
|
Thank´s,
I think it might be a solution
|
|
|
|
|
You are welcome.
Vote if it helps.
The funniest thing about this particular signature is that by the time you realise it doesn't say anything it's too late to stop reading it.
|
|
|
|
|
Hi friends
Please help me where to start .
I want a page to design in my report screen , in that screen i should allow the user to create a template (with some Formatting and excel function ) , and this page has to be exported excel and need to import from the excel without any loss of template( Formatting and functions
Can you please suggest me..how to do that ? which is the best way ? any other third party controls available?
Thanks
joe
|
|
|
|
|
Infragistics provides some files that help export a datagrid to excel.
The funniest thing about this particular signature is that by the time you realise it doesn't say anything it's too late to stop reading it.
|
|
|
|
|
Hello.
How do I make my datagrid with a filter and group data .
|
|
|
|
|
MSDN has an article[^].
The funniest thing about this particular signature is that by the time you realise it doesn't say anything it's too late to stop reading it.
|
|
|
|
|
|
Hi
but what exactly I want to realize a filter in my datagrid by just clicking at the column level.
|
|
|
|
|
Do you know where to find opensource projects in silverlight or wpf please?
Thanks
|
|
|
|
|
Ooh. Let's see. Codeplex. Code Project. Google Code. Source Forge.
|
|
|
|
|
I think opensource refers to projects which are free for anyone to download and use.
I have been searching for such a project i.e. a complete project which can I can go through to understand and learn...
I have searched already in the sites you mentioned but I have not found a complete project. The ones I have found are all to do with single controls in each project.
Thanks anyway, I will continue searching...
|
|
|
|
|
The awesome Karl Shifflett produced a great sample called BBQ Shack[^]. There is so much to learn in there.
|
|
|
|
|
|
Hello!
I'm testing WPF Toolkit DataGrid to display 2000-5000 rows.
I try to apply my control template for WPF Toolkit DataGrid.
VirtualizingStackPanel.IsVirtualizing set in True.
<Style x:Key="{x:Type DataGrid}" TargetType="{x:Type DataGrid}">
<Setter Property="MinRowHeight" Value="20"/>
<Setter Property="BorderThickness" Value="1" />
<Setter Property="SelectionUnit" Value="FullRow"/>
<Setter Property="IsReadOnly" Value="False"/>
<Setter Property="ScrollViewer.CanContentScroll" Value="True"/>
<Setter Property="ScrollViewer.IsDeferredScrollingEnabled" Value="True"/>
<Setter Property="VirtualizingStackPanel.IsVirtualizing" Value="True"/>
<Setter Property="VirtualizingStackPanel.VirtualizationMode" Value="Recycling"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type DataGrid}">
<Border Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
SnapsToDevicePixels="True"
Padding="{TemplateBinding Padding}">
<ScrollViewer Focusable="false" x:Name="DG_ScrollViewer">
<ScrollViewer.Template>
<ControlTemplate TargetType="{x:Type ScrollViewer}">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Button Command="{x:Static DataGrid.SelectAllCommand}" Width="{Binding RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}, Path=CellsPanelHorizontalOffset}" Focusable="false" Visibility="{Binding RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}, Path=HeadersVisibility, Converter={x:Static DataGrid.HeadersVisibilityConverter}, ConverterParameter={x:Static DataGridHeadersVisibility.All}}" />
<DataGridColumnHeadersPresenter Grid.Column="1" Name="PART_ColumnHeadersPresenter" Visibility="{Binding RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}, Path=HeadersVisibility, Converter={x:Static DataGrid.HeadersVisibilityConverter}, ConverterParameter={x:Static DataGridHeadersVisibility.Column}}"/>
<ScrollContentPresenter x:Name="PART_ScrollContentPresenter" Grid.Row="1" Grid.ColumnSpan="2" CanContentScroll="{TemplateBinding CanContentScroll}" />
<ScrollBar Grid.Row="0" Grid.RowSpan="2" Grid.Column="2" x:Name="PART_VerticalScrollBar"
Orientation="Vertical"
Maximum="{TemplateBinding ScrollableHeight}"
ViewportSize="{TemplateBinding ViewportHeight}"
Value="{Binding Path=VerticalOffset, RelativeSource={RelativeSource TemplatedParent}, Mode=OneWay}"
Visibility="{TemplateBinding ComputedVerticalScrollBarVisibility}">
</ScrollBar>
<Grid Grid.Row="2" Grid.Column="1">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="{Binding RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}, Path=NonFrozenColumnsViewportHorizontalOffset}"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<ScrollBar Grid.Column="1"
Name="PART_HorizontalScrollBar"
Orientation="Horizontal"
Maximum="{TemplateBinding ScrollableWidth}"
ViewportSize="{TemplateBinding ViewportWidth}"
Value="{Binding Path=HorizontalOffset, RelativeSource={RelativeSource TemplatedParent}, Mode=OneWay}"
Visibility="{TemplateBinding ComputedHorizontalScrollBarVisibility}"/>
</Grid>
</Grid>
</ControlTemplate>
</ScrollViewer.Template>
<ItemsPresenter SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
</ScrollViewer>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<Trigger Property="IsGrouping" Value="True">
<Setter Property="ScrollViewer.CanContentScroll" Value="False"/>
</Trigger>
</Style.Triggers>
</Style>
But I need to set ItemsPresenter into some control(Border , Grid or Decorator etc.):
...
</ControlTemplate>
</ScrollViewer.Template>
<Border>
<ItemsPresenter SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
</Border>
</ScrollViewer>
...
In this case, virtualization doesn't work, in spite of "VirtualizingStackPanel.IsVirtualizing = True".
Do you know some way that solve this problem?
Thanks.
|
|
|
|
|
Just as I suspected,
arno_cp wrote: <Style.Triggers> <Trigger Property="IsGrouping" Value="True"> <Setter Property="ScrollViewer.CanContentScroll" Value="False"/> </Trigger> </Style.Triggers>
You have to set the CanContentScroll to true if you want to use Virtualization .
You can also set the ItemsPanel of DataGrid to VirtualizingStackPanel .
People with high attitude deserve the standing ovation of our highest finger!
My Blog![ ^]
|
|
|
|
|
Good answer.
The funniest thing about this particular signature is that by the time you realise it doesn't say anything it's too late to stop reading it.
|
|
|
|
|
Thanks!
People with high attitude deserve the standing ovation of our highest finger!
My Blog![ ^]
|
|
|
|
|
Tarun.K.S wrote: You have to set the CanContentScroll to true if you want to use Virtualization .
You can also set the ItemsPanel of DataGrid to VirtualizingStackPanel .
I tried to set ItemsPresenter ScrollViewer.CanContentScroll = "True"... but there's no effect.
All properties used for virtualization are correct.
But if attach for application with Snoop, you can see all 2000 row controls.
DataGrid ItemsPanel is inheritor of VirtualizingStackPanel :
public class DataGridRowsPresenter : VirtualizingStackPanel
{
...
}
I think this is some limitation of wpf virtualization like grouping may be..
|
|
|
|