How do I create a user-customizable DockPanels in WPF C# - c#

so I'm trying to create a Panel-System, where the user can "Design" his own layout. The user should be able to grab the Panel and dock it wherever he likes, or even leave it floating as a separate window.
I really love how Adobe solved this in Photoshop, InDesign, or Illustrator.
But I also can accept similar solutions.
I made some Screenshots to show you what I mean.
I can't even figure out how to start. And I couldn't find some instructions or tutorials online because I have no Idea how this system is called. Therefore, I have no code to demonstrate.
I honestly would be already happy, if someone just leaves the name of such system. Or a link to a tutorial.
Thank you :)
Screenshots:
Google Drive

Related

WPF - Customizing title bar - uptodate solution

I love WPF but I'm in trouble.
Everything is very customizable but I didn't found anything valid for personalizing title Bar and Application borders.
I've understand that isn't possible to customize it directly because it's Windows that manage that, but otherwise I didn't found any valid solutions...
The only results that show up from google are using WindowChrome, but I think it's a VERY outdated solution.
Otherwise I only found THIS code snippet, but it is (for me, at least) a bit complicated to understand fully. Also, I've tried it but it doesn't allow to do some actions, like move window when maximized, but a lot of application (done in WPF) that I saw daily are able to do that.
In final word I can't find anything good.
I think WPF is very used even today, and I really don't understand how they do good looking solutions, that doesn't involve using a 2009 library.
You should get started with the docs. That sample you linked to will make more sense after that.
Basically, you are asking OS that you own the entire region and will take care of ensuring everything continues to behave as expected.

Create an editable table using WPF controls

Maybe this is not the right forum for my question, but I'll try anyway.
I am creating an application where I want the user to be able to fill in values in a table/matrix. The values are then going to be saved to a database I have set up. I want to build this application using Windows Presentation Foundation (WPF). I watched the following video on youtube:
https://www.youtube.com/watch?v=_i4mYXSaD4w and it shows very well what features I want my own application to have. The problem is, the example in the video is made in Winforms...
So, my question, which can be split into three parts, is:
Is there a way to build something equal, similar or better, in WPF?
What/which control(s) should I use? Grid? DataGrid?
How do I use this control?
I am new to WPF, and do not have a good picture of what controls to use. I have read many questions about WPF's DataGrid on StackOverflow as well as other QnA's, but I couldn't understand how to do what I wanted, or even if it was possible. Therefore, I'm very thankful to anyone who can explain and lead me onto the right track.
I suggest you to read this article: http://www.codeproject.com/Articles/30905/WPF-DataGrid-Practical-Examples

Touch Keyboard in .NET Compact Framework

I browsed the web for a simplified keyboard for a project running on windows mobile, but I could not find anything good, so I tried to create one myself.
The basic problem encountered, related to which control use to realize the "keys", was: I need a control that:
- is clickable
- can contain text
- DOES NOT TAKE THE FOCUS
I made some attempt, and I found that the LinkLabel seems to be exactly what I need: it works.
Now, the question is: is that a good idea to use the LinkLabel to realize a touch screen keyboard, or this is the wrong approach?
I would like to avoid developing all the application with this keyboard, and then find some trouble when it will be "too late".
Honestly the "right" approach is to create an actual SIP (there's a sample in the WinMo SDK). Anything else and you have to deal with the focus issues you're already seeing.

c# Tree/MindMap GUI

i am trying to research some gui technology for c# where i can display a tree view (opposed to the standard one provided.)
Essentially i want to have the gui draw a tree of data (as if you were going to draw a binary tree on a piece of paper or something) Then making each of the nodes clickable.
If this isnt available does anyone know of something where i could have a mindmap type GUI which shows links between elements and those are clickable?
I can guess people will say make one yourself, in which case i give up already ;) thats too advanced for me and as i am on a work placement i dont think i would be granted the time to make it as there are more pressing issues to get working first, like actually making the programme work!
Thank you
You can take a look at the controls in Kevin's WPF Bag-o-Tricks which has a WPF mind map style layout. Here is a nice example. If you want to use more professional components take a look at the product from Nevron Software, they have some great controls. There is also an opensource WPF graphing library - graphsharp (which I have no experience with, but I found a nice article by Sacha Barber). Since it's used in nDepend it must be pretty mature.
I hope you get some inspiration from those links :)
I also found XMind API for C#
https://xmindapi.codeplex.com/
It's free and looks easy to use.

Icons on Titlebar

I just found something really cool and i'm surprised i didn't really notice it sooner. Have you ever seen WordPad running on Windows 7? If you have, you'll notice that on the top-left of the window's titlebar are a few icons (save, undo/redo). On the actual titlebar itself! How cool is that? I was wondering how i would implement that feature into my own programs but don't know where to start. I went to MSDN and then got lost because i wasn't sure of what to actually look for... Can somebody please help me?
If you would like a piccture of what i'm talking about i can try and upload a pic somewhere like maybe photobucket or similar?
Thank you
Jase
It is part of the Ribbon ui. Here is some code from the code project.
http://www.codeproject.com/KB/toolbars/WinFormsRibbon.aspx
You can use a stack of commands to create a system that supports multiple level undo.

Categories