The Toggle Button tool is synonymous with font styles in a word-processing application, such as Bold, Italics, Underline, etc. Clicking the button will toggle the associated action, usually a Boolean property that you can set to two values: True or False. In a word-processing application, you might highlight some text and click the Bold button. The button remains in a selected state as long as the selected text is bold, very similar to a check box-type control — and just like a check box control, the end user can place the Toggle Button tool in a checked, unchecked, or indeterminate state.
The Toggle Button tool derives from Microsoft® Windows® Presentation Foundation’s System.Windows.Controls ToggleButton class; therefore, you get all the same functionality as a standard Windows Presentation Foundation toggle button. The Toggle Button tool also implements the IRibbonTool
interface, which adds cloning and binding functionality to facilitate advanced xamRibbon™ features. If you aren’t creating your own custom xamRibbon tool, you don’t need to worry about the IRibbonTool interface.
The ToggleButtonTool class exposes several extra properties that go a long way towards easily managing a button on xamRibbon. ToggleButtonTool exposes several 'Has' and 'Is' properties to help confirm if a property has been set or if the toggle button is in a certain state. A few of the standard properties that help set up a Toggle Button tool (or any tool) on xamRibbon include:
Caption - If a tool’s size is set to where the tool’s caption is visible, you’ll see this text next to the tool.
Id - An identification string that xamRibbon uses to associate tools when they’re located in different locations (i.e. a Ribbon Group and the Quick Access Toolbar simultaneously). The Id isn’t required, but it can help you access a tool at run time.
KeyTip - Each tool has a Key Tip (similar to main menu mnemonics) associated with it. If you don’t provide one explicitly, xamRibbon will internally choose one for you.
LargeImage - Usually a 32 x 32 pixel image. You’ll see this image when a tool’s SizingMode is set to ImageAndTextLarge.
SizingMode - This property is read-only and returns how the tool is currently sized on its associated Ribbon group. If you want to set the size of a tool, you can set the RibbonGroup’s MinimumSize and/or MaximumSize attached properties. Also, if you place a tool in a Button Group, the tools will automatically be sized to ImageOnly.
SmallImage - Usually a 16 x 16 pixel image. You’ll see this image when a tool’s SizingMode is set to ImageAndTextNormal.
Since xamRibbon tools all derive from and implement the same objects, the functionality for each of them is very similar. The following topics apply to all xamRibbon tools.