Overview

Feedback Control is a Windows Phone 7 user control that allows users to e-mail you (the app publisher) their feedback - directly from within the app.
Based on the your app's design and usability concepts, Feedback Control can be utilized in various ways, including (but not limited to):

  • As the main content of a dedicated Feedback page;
  • As one of the PivotItems in your app's About page;
  • In a popup window;
  • ... Your choice here :-)

 

Usage

If you are happy with the control as it is, you may simply add to your project a reference to its DLL.

Alternatively (or if you wish to make some changes) add the .cs file to your project.

Once done with that, import the namespace, e.g.:

xmlns:feedback="clr-namespace:KHKSoftware.Controls.Feedback;assembly=KHKSoftware.Controls.Feedback"

or (if you're creating the control in your code dynamically)

using KHKSoftware.Controls.Feedback;

Now you can add the control to your markup:

<feedback:FeedbackControl x:Name="FeedbackForm"
                          IntroText="Your feedback is extremely valuable! Please send us your extatic reviews!"
                          IsSubjectCustomizable="True"
                          DefaultSubject="[My Application]: "
                          DefaultBodyText="[Your praises and crazy ideas]"
                          EmailAddress="feedback@myapplication.com" />

Similarly, creating it in the code will look like

 

FeedbackControl feedbackForm = new FeedbackControl
{
    IntroText = "Your feedback is extremely valuable! Please send us your extatic reviews!",
    IsSubjectCustomizable = true,
    DefaultSubject = "[My Application]: ",
    DefaultBodyText = "[Your praises and crazy ideas]",
    EmailAddress = "feedback@myapplication.com",
    CustomActionBeforeSending = (subject, body) => MessageBox.Show(body, subject, MessageBoxButton.OK)
};

Detailed API Description

  • IntroText
    Introductory text to entice users to send their feedback.
    If the text is empty or null, the introduction field will not be displayed. 
  • IsSubjectCustomizable
    Defines whether the Subject field will be shown for users to provide custom subject values, or hidden (to always have the default subject used).

  • DefaultSubject
    The default subject value.
    If the the subject field is shown, this value will be used to prepopulate it; otherwise (i.e. if IsSubjectCustomizable is set to false) - it will define the standard subject line to be used for all the feedback.

  • DefaultBodyText
    Provides the default or sample text for the actual feedback (e.g. to illustrate what kind of feedback is expected).

  • EmailAddress
    E-mail address to the send the feedback to.

  • CustomActionBeforeSending
    Optional action to be performed before the feedback is sent.
    The Action delegate will be invoked with the subject value as its first parameter, and the body text as the second.

Using with YLAD (Your Last About Dialog):

        <Item Title="feedback" Type="xaml">
            <feedback:FeedbackControl xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                                      xmlns:feedback="clr-namespace:KHKSoftware.Controls.Feedback;assembly=KHKSoftware.Controls.Feedback"
                                      HorizontalAlignment="Stretch"
                                      VerticalAlignment="Top" />
        </Item>

Last edited May 26, 2012 at 7:46 PM by KHK, version 3

Comments

No comments yet.