InkToolbar.InitialControls Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft die Auflistung der integrierten Schaltflächen ab, die der InkToolbar bei der Initialisierung hinzugefügt wurden, oder legt diese fest.
Diese Eigenschaft überschreibt die Standardauflistung der integrierten Schaltflächen.
Standardmäßig besteht die InkToolbar aus zwei unterschiedlichen Gruppen von Schaltflächentypen:
- Eine RadioButton-Gruppe , die die integrierten Schaltflächen für Zeichnung (InkToolbarBallpointPenButton, InkToolbarPencilButton), löschen (InkToolbarEraserButton) und Hervorhebungen (InkToolbarHighlighterButton) enthält. In dieser Gruppe werden die Objekte InkToolbarCustomPenButton und InkToolbarCustomToolButton hinzugefügt.
Die ausgewählten Features schließen sich gegenseitig aus.
- Eine zweite Gruppe von Umschaltflächen, die die integrierte Schablone (InkToolbarStencilButton) (oder die Schaltfläche InkToolbarRulerButton ) enthalten. Benutzerdefinierte Umschaltflächen (InkToolbarCustomToggleButton) werden hier hinzugefügt.
Die Features schließen sich nicht gegenseitig aus und können gleichzeitig mit anderen aktiven Tools verwendet werden.
public:
property InkToolbarInitialControls InitialControls { InkToolbarInitialControls get(); void set(InkToolbarInitialControls value); };
InkToolbarInitialControls InitialControls();
void InitialControls(InkToolbarInitialControls value);
public InkToolbarInitialControls InitialControls { get; set; }
var inkToolbarInitialControls = inkToolbar.initialControls;
inkToolbar.initialControls = inkToolbarInitialControls;
Public Property InitialControls As InkToolbarInitialControls
Eigenschaftswert
Die Auflistung der integrierten Schaltflächen, die der InkToolbar hinzugefügt werden sollen.
Beispiele
So geben Sie an, welche integrierten Schaltflächen bei der Initialisierung angezeigt werden:
- Legen Sie InitialControls auf Keine fest.
- Fügen Sie die einzelnen Schaltflächen hinzu.
- Geben Sie die Benutzeroberfläche von InkToolbar an, z. B. die Standardschaltfläche. Die folgenden Beispiele (sowohl XAML als auch CodeBehind) zeigen, wie Sie die Standardschaltflächen aus dem InkToolber löschen, Kugelschreiber-, Stift- und Radiererschaltflächen hinzufügen und die Standardschaltfläche auf Bleistift festlegen.
XAML
<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<StackPanel x:Name="HeaderPanel" Orientation="Horizontal" Grid.Row="0">
<TextBlock x:Name="Header"
Text="Basic ink sample"
Style="{ThemeResource HeaderTextBlockStyle}"
Margin="10,0,0,0" />
</StackPanel>
<Grid Grid.Row="1">
<Image Source="Assets\StoreLogo.png" />
<!-- Clear the default InkToolbar buttons by setting InitialControls to None. -->
<!-- Set the active tool to the pencil button. -->
<InkCanvas x:Name="inkCanvas" />
<InkToolbar x:Name="inkToolbar"
VerticalAlignment="Top"
TargetInkCanvas="{x:Bind inkCanvas}"
InitialControls="None"
ActiveTool="{x:Bind pencilButton}">
<!--
Add only the ballpoint pen, pencil, and eraser.
Note that the buttons are added to the toolbar in the order
defined by the framework, not the order we specify here.
-->
<InkToolbarEraserButton />
<InkToolbarBallpointPenButton />
<InkToolbarPencilButton x:Name="pencilButton"/>
</InkToolbar>
</Grid>
</Grid>
<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<StackPanel x:Name="HeaderPanel" Orientation="Horizontal" Grid.Row="0">
<TextBlock x:Name="Header"
Text="Basic ink sample"
Style="{ThemeResource HeaderTextBlockStyle}"
Margin="10,0,0,0" />
</StackPanel>
<Grid Grid.Row="1">
<Image Source="Assets\StoreLogo.png" />
<InkCanvas x:Name="inkCanvas" />
<InkToolbar x:Name="inkToolbar" VerticalAlignment="Top" TargetInkCanvas="{x:Bind inkCanvas}" />
</Grid>
</Grid>
/// <summary>
/// An empty page that can be used on its own or navigated to within a Frame.
/// Here, we set up InkToolbar event listeners.
/// </summary>
public MainPage_CodeBehind()
{
this.InitializeComponent();
// Add handlers for InkToolbar events.
inkToolbar.Loading += inkToolbar_Loading;
//inkToolbar.Loaded += inkToolbar_Loaded;
}
/// <summary>
/// Handles the Loading event of the InkToolbar.
/// Here, we identify the buttons to include on the InkToolbar.
/// </summary>
/// <param name="sender">The InkToolbar</param>
/// <param name="args">The InkToolbar event data.
/// If there is no event data, this parameter is null</param>
private void inkToolbar_Loading(FrameworkElement sender, object args)
{
// Clear all built-in buttons from the InkToolbar.
inkToolbar.InitialControls = InkToolbarInitialControls.None;
// Add only the ballpoint pen, pencil, and eraser.
// Note that the buttons are added to the toolbar in the order
// defined by the framework, not the order we specify here.
InkToolbarBallpointPenButton ballpoint = new InkToolbarBallpointPenButton();
InkToolbarPencilButton pencil = new InkToolbarPencilButton();
InkToolbarEraserButton eraser = new InkToolbarEraserButton();
inkToolbar.Children.Add(eraser);
inkToolbar.Children.Add(ballpoint);
inkToolbar.Children.Add(pencil);
}
/// <summary>
/// Handle the Loaded event of the InkToolbar.
/// By default, the active tool is set to the first tool on the toolbar.
/// Here, we set the active tool to the pencil button.
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void inkToolbar_Loaded(object sender, RoutedEventArgs e)
{
InkToolbarToolButton pencilButton = inkToolbar.GetToolButton(InkToolbarTool.Pencil);
inkToolbar.ActiveTool = pencilButton;
}
Hinweise
Integrierte Standardschaltflächen oder über InitialControls angegebene Schaltflächen werden der Children-Eigenschaft nicht hinzugefügt.
Integrierte oder benutzerdefinierte Schaltflächen, die programmgesteuert hinzugefügt oder in XAML deklariert werden, werden der Children-Eigenschaft hinzugefügt.
Integrierte Schaltflächen werden in einer vordefinierten Reihenfolge innerhalb der jeweiligen Steuerelementgruppen angezeigt. Benutzerdefinierte Schaltflächen werden der entsprechenden Steuerelementgruppe in der angegebenen Reihenfolge nach allen integrierten Schaltflächen hinzugefügt.
Gilt für:
Weitere Informationen
- Zeichen- und Eingabestiftinteraktionen
- Hinzufügen einer InkToolbar zu einer Universelle Windows-Plattform-App (UWP)
- Tutorial zu den ersten Schritten: Freihandunterstützung in Ihrer UWP-App
- InitialControlsProperty
- Beispiel für einfache Freihandeingaben (C#/C++)
- Beispiel für komplexe Freihandeingaben (C++)
- Freihandbeispiel (JavaScript)
- Tutorial zu den ersten Schritten: Freihandunterstützung in Ihrer UWP-App
- Malbuchbeispiel