views:

2012

answers:

6

I'm doing this application in C# using the free Krypton Toolkit but the Krypton Navigator is a paid product which is rather expensive for me and this application is being developed on my free time and it will be available to the public for free.

So, I'm looking for a free control to integrate better into my Krypton application because the default one doesn't quite fit and it will be different depending on the OS version...

Any suggestions?

P.S: I know I could owner-draw it but I'm trying not to have that kind of work... I prefer something already done if it exists for free.

EDIT: I just found exactly what I wanted:
http://www.angelonline.net/CodeSamples/Lib_3.5.0.zip

+2  A: 

I don't know of any open source or free tab controls, but I wonder why you don't just use the framework's tab control. Is there something you are trying to do that the Forms.TabControl doesn't do?

Gary.Ray
+1 for this answer - and yes, the Windows.Forms tab control will look different under different version of Windows. This is a good thing - Windows look and feel. Applications that try to craft their own quirky design style can look very out of place very easily.
Richard Ev
Sometimes it's a good thing. And sometimes the default gray-brown-blue-pastel look and feel of Windows in its various incarnations is a bad thing. The decision as to whether an app should follow or deviate from OS UI guidelines/conventions is different for each app, and shouldn't be made as a snap decision.
James D
+4  A: 

My first suggestion would be to talk to Phil at ComponentFactory. I find him to be a very reasonable fellow. Maybe he can give you a special deal or make a design suggestion on how to customize the existing tab control.

But your's is more of a design/subjective question that, I think, would benefit from a screenshot to better communicate the design challenge you need to "integrate better". Saying "the default one doesn't quite fit" is pretty vague.

After that, people will have a better starting point for making suggestions. In the mean time, I would look at the WindowsClient.NET control gallery.

flipdoubt
What I mean by "doesn't fit" is that it doesn't fit the look of Krypton based apps. No matter if you are running XP or Vista, it just doesn't look right.
Nazgulled
I figured as much, but how do you want it to look as compared to how it looks now? I'm not suggesting anything revolutionary, just that a picture is worth a thousand words. Something like "This is what it looks like now. I want it to look less gray."
flipdoubt
Is Application.EnableVisualStyles() set in Main?
flipdoubt
A: 

You could look at the Magic TabControl project over at CodeProject.

Rune Grimstad
That CodeProject article says nothing about how to implement a tab control. It's a little bit of code sitting around a binary MagicLibrary.DLL for which no source is provided and which I believe is a commercial library.
James D
A: 

@Nazgulled can you give us your sample code please? thanks

Sample code for what?
Nazgulled
There is no sample code, the library he referenced is a (binary) sample app and a (binary) control DLL, and...rather than downloading/running an unknown compiled "demo app" I'd grab the control library from its direct download link on this page: http://www.advancedcomputing.ch/Downloads/tabid/62/Default.aspx where you'll see a link for a Tab Control. Still no source, but at least you're getting the original file from its purported author.
James D
I should reword that to say, "at least you're getting the specific tab control assembly you need".
James D
A: 
  1. Download the Flat Tab Control (.NET) from Code Project. Takes about 30 seconds to get this working, and it gets you away from the default Windows tab control look and feel. But it's not Kryptonized.
  2. See this post on a slick custom Kryptonized Tab Control based on the Flat Tab control you built in Step 1. You can download the control assembly on this downloads page (it's a little hard to find). So far as I know, the source code isn't available, however, Reflector can be of use here if you're curious as to how the Krypton-theming was done.
  3. Replace the Flat Tab display logic (Paint, etc.) with Krypton-aware display logic. This is straightforward, because there's not a lot of code to the Flat Tab control.
James D
+1  A: 

If you need an updated lib with Office 2010 Palettes: http://www.angelonline.net/CodeSamples/Lib_4.2.0.zip

Mario