Project Description
A WP8.1 library that provides various controls and classes that will help developers quickly and easily augment their apps to behave more like native apps.
QKit is a WinRT library designed for Windows Phone 8.1 that provides various controls and classes that will help developers quickly and easily augment their apps to behave more like native apps. Not only will controls look and behave as closely as possible to their native counterparts, they will also be flexible and easy to use. Every QKit control, including JumpList and ListPlaceholder, is designed with extra care to match the UX of Windows Phone so they feel right at home in a Windows Phone app the moment you drop them in. It's not easy to get the look and feel of every control right when implementing from scratch but now you don't have to worry. Download and start coding now.

Download
https://www.nuget.org/packages/QKit/

Release Notes
v0.4.1
Bug Fixes
  • Changed EdgeSelectButton to derive from Button instead of ButtonBase.
  • JumpList pickers now support theme changes during runtime. No need to restart app anymore.
  • Improved Light theme colors to better match OS for JumpListPickers.
  • Simplified GenericJumpList picker items for performance increases.
  • Renamed incorrectly named JumpListItemBackgroundBrush to JumpListGroupHeaderBackgroundBrush and JumpListItemTextForegroundBrush to JumpListGroupHeaderTextForegroundBrush

v0.4.0
  • New MultiSelectListView with edge selection
IMPORTANT: Margins were changed for JumpList controls. To compensate, add 19px left margin to your item templates that appear in a JumpList OR override the resource key "JumpListHeaderItemMargin."
v0.3.3
  • InputAwarePanel now scrolls text input controls into view if it's inside a ScrollViewer. No support for horizontal scrolling yet. Does not scroll to cursor for RichEditBox.
  • Added new sample page mocking up a forms input page. Used to demonstrate InputAwarePanel's new scroll into view feature.
  • Minor bugs fixes.

Controls
  • AlphaJumpList & GenericJumpList - No need to fiddle with SemanticZooms and endless styles to get your JumpList experience right. Just wrap these controls around a ListView and it's magically upgraded into a JumpList.
*Globalization support for all Windows Phone languages
*Proper scaling and adaptive layout for all screen sizes, screen resolutions, and orientation
*Performance tested to be responsive
*Support for high contrast mode
  • ListPlaceholder - An empty list is a confusing list but adding a TextBlock + logic to show a message when that happens takes too much time and effort. With ListPlaceholder control, just point it to a ListView/GridView to "watch" and a message will automatically display whenever that watched list is not showing any items.
  • InputAwarePanel - WP shifts the page up rather than shrinking it when the keyboard deploys so the focused TextBox is not obscured. That's great until you need to scroll to the next TextBox because everything below that TextBox is still obscured by the keyboard. And a ScrollViewer does help because it doesn't know it's under a keyboard. With the InputAwarePanel, the panel shrinks rather than shifts so any ScrollViewer inside it will adjust properly and allow you to scroll to all TextBoxes. Great for forms or chat scenarios. Behaves almost like the native OS.
*Animation built in with multiple modes for best performance and/or experience
*Auto scroll into view supported
*Automatic layout readjustments for orientation change and keyboard size change
  • MultiSelectListView - While the built in ListView control supports multiple selection, the animation to display the CheckBoxes are not pleasant or accurate to the OS. With the MultiSelectListView, the animation and UX is nearly identical to the multiselection lists found in the OS. Not only that, this control allows you to invoke multiselection mode by tapping on the left edge of the item just like in the email app.
Classes
  • JumpListHelper - Groups and sort lists of objects easily properly for JumpLists. Results in the exact same grouping and sorting as native WP found in the apps list or people hub.
  • JumpListGroup - A keyed list representing a single group of a JumpList. A list of JumpListGroups will represent the entire JumpList. Contains separate key and display key for flexibility of sorting and manipulation of groups.

Last edited Sep 7, 2014 at 5:53 PM by qdev, version 12