What is the best C# font selection control? - c#

To start off with, a little context for the question...
I have a C# .NET 2.0 program that generates web pages... I am looking for a control that allows the user to pick web friendly fonts for use in generating the web page to run on as many computer as possible. I'm currently useing the MS font dialog, but I have not found a way to filter it's list of fonts available. Additionally, I wouldn't mind buying a control if it has a more attractive use interface...
So... What font selection/picking control do you feel is the best and what attributes stand out for your choice?

My favorite is available through DevExpress.com. Their ExtraEditors library has a FontEdit component. Also if you embrace their controls it will improve the overall appearance of you app.
http://www.devexpress.com/Products/NET/Controls/WinForms/Editors/

Related

Embed html in C# Forms

Is there a way to embed HTML into a windows forms custom usercontrol? I want to create a lightweight control to be used in a .NET 4.0 application, but since the contents of it is viable to change, I was thinking using HTML to lay it out might be easiest. Is there a way to achieve this in windows forms? There are some other topics with C# and HTML but pretty sure non involves creating a control that parses HTML and displays it.
Thanks
You could use a WebBrowser, but I'd recommend not going down that path. Just use traditional controls to accomplish what you need, if at all possible, maybe combined with a little GDI+.
A WebBrowser would be your best bet in terms of ease of use and maintenance. You can have further control over the contents themselves by accessing the browser.Document.DomDocument interfaces and events. I would not recommend using GDI since it can become a pain to maintain and manage custom rendering in the long run.
I have been trying to do a similar thing and have found awesomium. They have a dotnet and mono wrapper and quite fine grain control over the whole thing acts. It is also free as long as your company makes less than 100k a year.
Forgot to mention it is a browser that you basically embed in your application so you don't need to worry about the user not having it installed or anything and is consistant over pc's and OS's

Best way to implement a multilingual application in silverlight and WPF

I have always been interested in how should I implement a multilingual applications and what or which way I should go to deal with this and also what's the best way to control the layouts in application scope? I've read many articles but the more read, the more confused I get. I want to know Is there any standard pattern to implement application such as this.
Any advice will be helpful.
I have found Location using MarkupExtension the best way to do localization in WPF and I also have successfully used it in one of my WPF projects.
It allows you to change the language of whole application at run-time. You can allow user to select and change language at run-time without requiring user to restart the app.
I'm currently developing a multilingual application, these links helped me a lot:
WPF Globalization and Localization Overview
WPF Localization Guidance
IMO working with BAML is very painful instead I'm using WPF localization extension now, It's very good library and very easy to use.

Text editor Ideas

I'm doing a bit research on gathering possible technologies to program a Text editor/Word Processor. The language used will be C# with the possibility to interop to unmanaged code via Pinvoke or Com. So far the Ideas I have come up with are.
Using Xml- Total Control of the process with the ability to use Xlst to style the document.
The rich Text editor Control - has out of the box word editing capabilities.
Html using Html Control with Design mode On - available formating tags already available and a easily distributable format.
I'm curious if anyone is aware of any other technologies or frameworks to build a Text editor I may have missed. Thanks in advance.
It depends from your technology of choise and licensing - if it is Silverlight or WPF, it's worth researching some components of the shelf - for example Telerik offers RadRichTextBox, which looks like can cover your requirements. Live Silverlight demos of word processor here and of data binding to HTML content here - WPF variant is pretty much the same.

How do you set a custom theme for a .NET application?

Much as the title says, I am wondering how to style a program like Photoshop CS4 or Autodesk Maya 2011. These programs are styled to where the UI looks completely custom. Right now I am using C# to program, but I can easily switch to C++ and WinAPI if it is easier. I have done multiple google searches for styling controls in C#, but there are seemingly no accurate results.
Much thanks for any help,
-Thomas
If you using C#, WPF is a way to go, to make some custom UI. WinForms are not so modifiable.
This is a no easy task. DevXpress offer a wide range of skins with their components, so does Telerik.
There is a free library (without source) at Skybound, however this one is pretty old and not being developed anymore.

How do I give professional look and feel to my .NET windows application?

I'm using WINFORMS not WPF.
I just know basic c# .net gui programming. I donot want the traditional windows look. I want to have my own custom look (eg. gtalk, antivirus softwares, media players, google chrome).
Actually I'm inspired by google's PICASA software. Its awesome. I want to do something like that.How can I do that? If there is something I should learn please point me.
Also I may have to write my own custom controls (like modified tree view etc..) I guess. Please give some good learning resources.
This article describes how to draw custom windows. The author also shows how to draw non-rectangular windows.
If you could use WPF instead of Windows Forms, this is a good article about customizing window drawing:
http://www.codeguru.com/csharp/.net/net_wpf/article.php/c16379/
There is also a question with some good answers here on SO:
Creating custom forms in WPF?
Update:
I think that skinning and custom drawing is fun to do from a programmers perspective, but I also think that there is almost no benefit for the user.
The creators of the platform you are developing for might have put a lot of effort into the design of their windowing toolkits.
If you just want to change some visual aspects of your application you also should take into account that you might miss some important other aspects of UI design:
consistency
accessibility
aesthetics (if you are overdoing
effects, gradients, ...)
internationalization
...
As you are developing for Windows, you also lose the skinning ability of the OS itself. And I think that some of the skins that come with newer versions of Windows are pretty good.
You can try any of the following:
telerik
Syncfusion
(source: componentsource.co.jp)
Or other components.
They do make your UI pretty.
Edit: if you want to study how they do it, you can buy the source code-- along with documentation and understand from there.
There are some commercial control libraries available.
I can recommend the Krypton Suite. It consists of the free Krypton Toolkit (which contains a lot of skinnable controls) and other non-free controls (Navigator, Ribbon, Docking, Workspace). It has some built-in palettes and renderers that allow you to make your UI look like Office 2010, Office 2007, Office 2003, ...
You want to look for +winforms +skinning. I haven't tried these, but the first hits don't look bad. Most decent skinning tools will be paid for.
From what you said, you want to develop your own custom controls. You have some frameworks for this like Qt which can use Direct3D for hardware accelerated graphics. It also have a Visual Studio plugin. There is a free LGPL version and a commercial version of it.
I remembered about Qt because you mentioned Picasa and as far as I remember, I heard the Picasa UI has been written through Qt.
You can try using "SetWindowRgn(..)" to set an arbitrary region for your window. This may range from giving a rounded rectangle shape to giving a weird looking shape to the form!
Check this out: Link.
There is another option if you are working in Vista(aero enabled), ie you can check out DwmExtendFrameIntoClientArea(..) function here: link text
You can set the form's border style to 'none' and go on to create your custom form! You then might have to create custom buttons to carry out tasks like close, minimise, maximise etc. You might even need to write code for drag and drop events..
For the background, you might need to have a look at the gradient fills to give a great effect, otherwise you can use great looking pictures as Background..! But the latter option isnt good unless you have really good pic.

Categories

Resources