| |
Scrollable TextBox Column |
|
|
<Window x:Class="Content.ScrollableTextBoxColumn"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="ScrollableTextBoxColumn" Height="181" Width="283" MinWidth="250">
<DockPanel>
<Border DockPanel.Dock="Top" BorderBrush="SteelBlue" BorderThickness="2">
<StackPanel Margin="5" Orientation="Horizontal">
<Button Padding="3" Click="LineUp">Line Up</Button>
<Button Padding="3" Click="LineDown">Line Down</Button>
<Button Padding="3" Click="PageUp">Page Up</Button>
<Button Padding="3" Click="PageDown">Page Down</Button>
</StackPanel>
</Border>
<ScrollViewer Name="scroller">
<Grid Margin="0,10,0,0" Focusable="False">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"></ColumnDefinition>
<ColumnDefinition Width="*" MinWidth="50" MaxWidth="800"></ColumnDefinition>
<ColumnDefinition Width="Auto"></ColumnDefinition>
</Grid.ColumnDefinitions>
<Label Grid.Row="0" Grid.Column="0" Margin="3" VerticalAlignment="Center">A</Label>
<TextBox Grid.Row="0" Grid.Column="1" Margin="3" Height="Auto" VerticalAlignment="Center"></TextBox>
<Button Grid.Row="0" Grid.Column="2" Margin="3" Padding="2">A</Button>
<Label Grid.Row="1" Grid.Column="0" Margin="3" VerticalAlignment="Center">A</Label>
<TextBox Grid.Row="1" Grid.Column="1" Margin="3" Height="Auto" VerticalAlignment="Center"></TextBox>
<Button Grid.Row="1" Grid.Column="2" Margin="3" Padding="2">B</Button>
<Label Grid.Row="2" Grid.Column="0" Margin="3" VerticalAlignment="Center">B</Label>
<TextBox Grid.Row="2" Grid.Column="1" Margin="3" Height="Auto" VerticalAlignment="Center"></TextBox>
<Button Grid.Row="2" Grid.Column="2" Margin="3" Padding="2">B</Button>
<Label Grid.Row="3" Grid.Column="0" Margin="3" VerticalAlignment="Center">C</Label>
<TextBox Grid.Row="3" Grid.Column="1" Margin="3" Height="Auto" VerticalAlignment="Center"></TextBox>
<Button Grid.Row="3" Grid.Column="2" Margin="3" Padding="2">C</Button>
<Label Grid.Row="4" Grid.Column="0" Margin="3" VerticalAlignment="Center">D</Label>
<TextBox Grid.Row="4" Grid.Column="1" Margin="3" Height="Auto" VerticalAlignment="Center"></TextBox>
<Button Grid.Row="4" Grid.Column="2" Margin="3" Padding="2">D</Button>
<Label Grid.Row="5" Grid.Column="0" Margin="3" VerticalAlignment="Center">E</Label>
<TextBox Grid.Row="5" Grid.Column="1" Margin="3" Height="Auto" VerticalAlignment="Center"></TextBox>
<Button Grid.Row="5" Grid.Column="2" Margin="3" Padding="2">E</Button>
<Label Grid.Row="6" Grid.Column="0" Margin="3" VerticalAlignment="Center">F:</Label>
<TextBox Grid.Row="6" Grid.Column="1" Margin="3" Height="Auto" VerticalAlignment="Center"></TextBox>
<Button Grid.Row="6" Grid.Column="2" Margin="3" Padding="2">B</Button>
<Label Grid.Row="7" Grid.Column="0" Margin="3" VerticalAlignment="Center">S</Label>
<TextBox Grid.Row="7" Grid.Column="1" Margin="3" Height="Auto" VerticalAlignment="Center"></TextBox>
<Button Grid.Row="7" Grid.Column="2" Margin="3" Padding="2">B</Button>
</Grid>
</ScrollViewer>
</DockPanel>
</Window>
//File:Window.xaml.cs
using System;
using System.Collections.Generic;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Shapes;
namespace Content
{
public partial class ScrollableTextBoxColumn : System.Windows.Window
{
public ScrollableTextBoxColumn()
{
InitializeComponent();
}
private void LineUp(object sender, RoutedEventArgs e)
{
scroller.LineUp();
}
private void LineDown(object sender, RoutedEventArgs e)
{
scroller.LineDown();
}
private void PageUp(object sender, RoutedEventArgs e)
{
scroller.PageUp();
}
private void PageDown(object sender, RoutedEventArgs e)
{
scroller.PageDown();
}
}
}
|
|
|
Related examples in the same category |
1. | TextBox Style | | | 2. | Bind TextBlock to TextBox | | | 3. | TextBox focus listener | | | 4. | TextBox with custom ErrorTemplate and ToolTip | | | 5. | TextBox uses the ExceptionValidationRule and UpdateSourceExceptionFilter handler | | | 6. | TextBox with UpdateSourceExceptionFilter handler | | | 7. | TextBox with default ErrorTemplate | | | 8. | TextBox MouseLeftButtonDown action and PreviewMouseLeftButtonDown action | | | 9. | Assign your own class to DataContent and bind to TextBox | | | 10. | Listen to TextBox text changed event | | | 11. | Handler for the PreviewKeyDown event on the TextBox | | | 12. | TextBox: set text, select all, clear, prepend, insert, append, cut, paste, undo | | | 13. | Set TextBox to editable | | | 14. | TextBox text changed event | | | 15. | TextBox PreviewKeyDown | | | 16. | TextBox KeyDown | | | 17. | TextBox PreviewKeyUp | | | 18. | TextBox KeyUp | | | 19. | TextBox TextInput | | | 20. | TextBox PreviewTextInput | | | 21. | Scroll TextBox | | | 22. | TextBox TextChanged event | | | 23. | Use Dictionary to record which textbox has been changed and not saved | | | 24. | Set TextBox ContextMenu to null | | | 25. | TextBox Selection start, end and selected text | | | 26. | TextBox PreviewKeyDown, PreviewKeyUp, PreviewTextInput, KeyDown, KeyUp and TextChanged events | | | 27. | Check Spelling Error | | |
|