NOW CLOSED: WPF Feature Suggestions

PLEASE READ!!!!!

This UserVoice forum is now closed. For all new WPF feature requests, please use the Windows Presentation Foundation category in the Visual Studio UserVoice

The ideas on this site have been already migrated over to the new location!

I suggest you ...

You've used all your votes and won't be able to post a new idea, but you can still search and comment on existing ideas.

There are two ways to get more votes:

  • When an admin closes an idea you've voted on, you'll get your votes back from that idea.
  • You can remove your votes from an open idea you support.
  • To see ideas you have already voted on, select the "My feedback" filter and select "My open ideas".
(thinking…)

Enter your idea and we'll search to see if someone has already suggested it.

If a similar idea already exists, you can support and comment on it.

If it doesn't exist, you can post your idea so others can support it.

Enter your idea and we'll search to see if someone has already suggested it.

  1. Multiple Code behind Partial Classes

    When creating partial classes for a XAML code behind class have the partial classes all reside under the XAML file in the solution explorer. Right now when you add a XAML file to a project 1 partial class (code behind) is nested in a node underneath the XAML file. If I add a new partial class for the code behind to hold event handlers it is in the solution explorer on its own. It would be nice if it would nest in a 2nd node underneath the XAML file.

    4 votes
    Vote
    Sign in
    Check!
    (thinking…)
    Reset
    or sign in with
    • facebook
    • google
      Password icon
      I agree to the terms of service
      Signed in as (Sign out)
      You have left! (?) (thinking…)
    • Make BringIntoView work correctly with UI virtualization

      BringIntoView does not work correctly with user interfaces that are virtualized. A great example is the TreeView. Calling BringIntoView on an item that is not currently on screen will not bring the item into view because it hasn't been drawn yet even though its model exists. The only way to get around this today is through hacks such as : http://lucisferre.net/2010/04/21/virtualizing-stack-panel-wpf-part-duex/

      and

      http://code.msdn.microsoft.com/Changing-selection-in-a-6a6242c8

      9 votes
      Vote
      Sign in
      Check!
      (thinking…)
      Reset
      or sign in with
      • facebook
      • google
        Password icon
        I agree to the terms of service
        Signed in as (Sign out)
        You have left! (?) (thinking…)
      • Provide a MaskedTextBox control, just like in Windows Forms.

        Provide a MaskedTextBox control, just like in Windows Forms.

        1 vote
        Vote
        Sign in
        Check!
        (thinking…)
        Reset
        or sign in with
        • facebook
        • google
          Password icon
          I agree to the terms of service
          Signed in as (Sign out)
          You have left! (?) (thinking…)
        • Converter of .fbx files

          Converter for .fbx file to have a possibility to convert .fbx files to XAML code (for ex. ModelVisual3D).

          6 votes
          Vote
          Sign in
          Check!
          (thinking…)
          Reset
          or sign in with
          • facebook
          • google
            Password icon
            I agree to the terms of service
            Signed in as (Sign out)
            You have left! (?) (thinking…)
          • Direct X and Media Foundation Support

            Support for Web Cam, DVD, Blu Ray, TV Tuner, Radio, All the great stuff we loved in direct show and all future features we will love in media foundation. Bring it to the .net WPF world a little easier!

            6 votes
            Vote
            Sign in
            Check!
            (thinking…)
            Reset
            or sign in with
            • facebook
            • google
              Password icon
              I agree to the terms of service
              Signed in as (Sign out)
              You have left! (?) (thinking…)
              1 comment  ·  Admin →
            • Add better support for multiple pointing devices

              Multipoint SDK demonstrated how you could create applications using multiple mice and keyboards. Unluckily the development of Multipoint SDK seems to be discontinued.

              So please make support for multiple input devices a first class citizen into WPF.

              3 votes
              Vote
              Sign in
              Check!
              (thinking…)
              Reset
              or sign in with
              • facebook
              • google
                Password icon
                I agree to the terms of service
                Signed in as (Sign out)
                You have left! (?) (thinking…)
              • Make it easy to use WPF from C++

                WPF is the most modern technology for creating GUIs Microsoft has to provide. Unluckily it is rather unpleasant to use from C++(/CLI) (at least a lot more unpleasant than C#).

                So add C++/CLI as an additional first-class language for developing WPF applications.

                3 votes
                Vote
                Sign in
                Check!
                (thinking…)
                Reset
                or sign in with
                • facebook
                • google
                  Password icon
                  I agree to the terms of service
                  Signed in as (Sign out)
                  You have left! (?) (thinking…)
                • Remove Thread Affinity

                  Remove the requirement that controls can only be updated from the thread that created them (ui thread). Applications that must show many windows that are constantly being updated become slow because only one thread is handling the updates. The programmer is then forced to start creating the windows on separate threads which then leads to further complications. If data is coming in via something like an Enterprise Service Bus and the messages are being processed via background threads, the interaction with the UI becomes very difficult. This is especially true since the Observable collections do not support this type of…

                  7 votes
                  Vote
                  Sign in
                  Check!
                  (thinking…)
                  Reset
                  or sign in with
                  • facebook
                  • google
                    Password icon
                    I agree to the terms of service
                    Signed in as (Sign out)
                    You have left! (?) (thinking…)
                    1 comment  ·  Admin →
                  • create and add useful controls

                    create and add useful wpf controls to .net framework

                    1 vote
                    Vote
                    Sign in
                    Check!
                    (thinking…)
                    Reset
                    or sign in with
                    • facebook
                    • google
                      Password icon
                      I agree to the terms of service
                      Signed in as (Sign out)
                      You have left! (?) (thinking…)
                    • XAML Regions

                      Please add something similar to the #region in C# code. XAML needs to by folded sometimes :)

                      11 votes
                      Vote
                      Sign in
                      Check!
                      (thinking…)
                      Reset
                      or sign in with
                      • facebook
                      • google
                        Password icon
                        I agree to the terms of service
                        Signed in as (Sign out)
                        You have left! (?) (thinking…)
                      • shader constant buffers

                        Add support for shader constant buffers for WPF pixel shader effects (ShaderEffect class).

                        This feature would enable users to develop custom rasterization shaders - either for numerical data (function plots) or also vector graphics (for experimenting fun... or special stuff not available by WPF, e.g. higher order bezier curves for CAD or whatever). It would also enable users to develop more complex shader effects eyecandy.

                        Using texture samplers would be a workaround, but I need the update performance of constant buffers (function graph plotting).
                        Another workaround is using DirectX + D3DImage, but this is all to much overhead for this…

                        40 votes
                        Vote
                        Sign in
                        Check!
                        (thinking…)
                        Reset
                        or sign in with
                        • facebook
                        • google
                          Password icon
                          I agree to the terms of service
                          Signed in as (Sign out)
                          You have left! (?) (thinking…)
                        • Easier control template customization

                          In many cases a simple change to the appearance of a control requires the wholesale replacement of the control template. It seems like there needs to be a more granular method to customizing the control without having to copy and edit the entire control template. It is not always clear what parts of a control template the control depends on such that replacing the template leads to subtle bugs in the controls behavior or display.

                          4 votes
                          Vote
                          Sign in
                          Check!
                          (thinking…)
                          Reset
                          or sign in with
                          • facebook
                          • google
                            Password icon
                            I agree to the terms of service
                            Signed in as (Sign out)
                            You have left! (?) (thinking…)
                          • Show help on Properties and Events in Visual Studio in Propertygrid

                            When you select a control in the WinForms designer there is always a short text explaining what a property is used for. In WPF this feature is missing. Please add it.

                            3 votes
                            Vote
                            Sign in
                            Check!
                            (thinking…)
                            Reset
                            or sign in with
                            • facebook
                            • google
                              Password icon
                              I agree to the terms of service
                              Signed in as (Sign out)
                              You have left! (?) (thinking…)
                            • port Silverlight themes to WPF

                              It would be nice if some of the Silverlight themes like Accent and JetPack were officially ported to WPF 4 ... it will really help LoB developers without design skills develop decent-looking applications. By default, the DataGrid from WPF 4 under Aero looks like it's from Windows 3.1.

                              26 votes
                              Vote
                              Sign in
                              Check!
                              (thinking…)
                              Reset
                              or sign in with
                              • facebook
                              • google
                                Password icon
                                I agree to the terms of service
                                Signed in as (Sign out)
                                You have left! (?) (thinking…)
                              • Make internal use of BindingGroup in DataGrid optional

                                Validation is already complex in WPF and the obligatory use of BindingGroup in DataGrid makes validation inconsistent if not buggy. See the numerous complaints on "datagrid validation" on Microsoft Connect. BindingGroup is an unfortunate UI-centric transaction mechanism. AFAIK SL can do even do without it.
                                I'd rather have a transaction mechanism based on a temporary, custom build clone object like in dialog windows. Contrary to the BindingGroup this would work neatly with a 'fully interactive' viewmodel and MVVM.

                                6 votes
                                Vote
                                Sign in
                                Check!
                                (thinking…)
                                Reset
                                or sign in with
                                • facebook
                                • google
                                  Password icon
                                  I agree to the terms of service
                                  Signed in as (Sign out)
                                  You have left! (?) (thinking…)
                                • 3 votes
                                  Vote
                                  Sign in
                                  Check!
                                  (thinking…)
                                  Reset
                                  or sign in with
                                  • facebook
                                  • google
                                    Password icon
                                    I agree to the terms of service
                                    Signed in as (Sign out)
                                    You have left! (?) (thinking…)
                                  • Add Padding property to Panels

                                    Add the Padding property to panels like Grid, StackPanel, WrapPanel, also to ColumnDefinition and RowDefinition.
                                    Without it, to obtain similar effect you have to set Margin for every single control inside the panel, and styles are not an option because first and last child of a row or column have different margin (margin is added). What if you need to change the margin afterwards? You have to go child by child editing the Margin property of every child control, this is not good maintainability which is one of the goals of the new layout system of WPF.

                                    7 votes
                                    Vote
                                    Sign in
                                    Check!
                                    (thinking…)
                                    Reset
                                    or sign in with
                                    • facebook
                                    • google
                                      Password icon
                                      I agree to the terms of service
                                      Signed in as (Sign out)
                                      You have left! (?) (thinking…)
                                    • Make ListBox.SelectedItems bindable

                                      System.Windows.Controls.ListBox.SelectedItems is readonly and therefore not bindable from xaml. Very unexpected, and inconvenient for MVVM pattern. Suggest to make it bindable.

                                      2 votes
                                      Vote
                                      Sign in
                                      Check!
                                      (thinking…)
                                      Reset
                                      or sign in with
                                      • facebook
                                      • google
                                        Password icon
                                        I agree to the terms of service
                                        Signed in as (Sign out)
                                        You have left! (?) (thinking…)
                                      • 115 votes
                                        Vote
                                        Sign in
                                        Check!
                                        (thinking…)
                                        Reset
                                        or sign in with
                                        • facebook
                                        • google
                                          Password icon
                                          I agree to the terms of service
                                          Signed in as (Sign out)
                                          You have left! (?) (thinking…)
                                        • High Performance line graph control based on Dynamic Data Display

                                          Support for a high performance line graph control based on (or similar to) the Microsoft Research Project Dynamic Data Display (http://dynamicdatadisplay.codeplex.com/). Dynamic Data DIsplay is great but work on this project appears to have stopped.

                                          399 votes
                                          Vote
                                          Sign in
                                          Check!
                                          (thinking…)
                                          Reset
                                          or sign in with
                                          • facebook
                                          • google
                                            Password icon
                                            I agree to the terms of service
                                            Signed in as (Sign out)
                                            You have left! (?) (thinking…)

                                          NOW CLOSED: WPF Feature Suggestions

                                          Feedback and Knowledge Base