I am looking for a third party component that could handle spellchecking for Windows forms (.Net 2.0 or .NET 3.5) I have the following requirement:
The component should be able to use Open office dictionary (Need to use a Swedish dic I think the OO is the best one)
Be able to underline in the UI while typing, like word. (Don’t want to implement this by myself)
Be able to underline in a simple textbox not just rich textbox. (Don’t want to change to much in the legacy code)
Be able to use customized dictionary so I can use both the OO dictionary and my own textfiles with words at the same time.
I have found a spellchecker that do all this things and that is XtraSpellchecker from Devexpress the only problem is that its not spelling correctly for some words with Swedish OO-dictionary . Its not the OO dictionary that is the problem because the dictionary work fine with NHunspell.
I may fix this small bug if I buy the component with source from devexpress but its hard to convince management to buy something that they don’t know if it will work or not. I have asked on devexpress forum if it’s a bug but waiting for response.
There is one “maybe” requirement also and that’s management probably want to have a spellchecker for WPF too and its always good if I can get both WPF/Win Form from the same vendor. I can not use the built in spellchecker in WPF because there is no Swedish dictionary.
Anyone know any other spellchecker component that meets my requirement?
This might help, if the users will have word installed http://msdn.microsoft.com/en-us/library/aa203681(office.11).aspx
I have used netspell not sure if its EXACTLy what you want, but its pretty good.
Related
I'm trying to create polish/english language learning program.
I'm using C#, and ideally would like to support Windows XP, Vista and (obviously) newer versions.
At the beginning, computer selects some random polish/english word, and "says" it. Program user is then expected to say the same word, but in another language, and program evaluates his correctness. If user said correct word, he is granted a point, otherwise he loses a point.
My first idea was to use speech-to-text library (like System.Speech), but it turns out that
polish language is not very well supported
- speech-to-text is (afaik) not optimized for comparing words
Is there a better way to do it?
Do you know about any library that can do such thing? (Ideally managed library, but im ok with creating my own C# wrapper around unmanaged code).
Is there a name for the thing i want to achieve? (comparing spoken words)
Should I stick to speech-to-text libraries or find another algorithm?
I really tried to google solution, but i wasn't sure after which keyword should i search for. Best i could find was this thread: Language learning speech recognition tools. Solution presented there kind of works for me, but is problematic to deploy (i want a standalone application, with minimum installation) and testing 'correctness' of word that way is a bit weird (i am only 'recognising' single word).
Any help would be really appreciated. Sorry for my poor English.
You might want to read about speech recognition using neural network if you intend to do some work in this area.
Please say name of this component and does c# have it?
As others have suggested, this is commonly called an Outlook Bar after it's most famous usage in the Microsoft Outlook application.
Something similar is available in most third-party control suites, but if you're looking for something that is free and easily customizable, you might check out the OutlookBar control available on CodeProject:
The control itself is pretty simple, and implemented entirely in managed C# code as a UserControl.It should work under all versions of the .NET Framework back to 1.1, and is painless to integrate into your application. Best of all, with the source code freely downloadable, it's infinitely customizable to fit your specific needs!
I think it is called accordion, at least in jQuery.
And I do not know of any such in the basic controlles that comes with c# but I am cetrain that there are many 3:rd party components like this.
ComponentArts or Telerik are the first that comes to mind.
In WinForms, this is called an Outlook Bar or Navigation bar.
Most (if not all) third-party control suites, such as DevExpress, offer it.
I think its name is Accordion and it doesn't exists natively on Windows Forms Architecture.
Accordion ? Try searching among different control toolkits - there should be an implementation.
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.
I want to learn c# so I can do some desktop developing. I've developed command-line C# applications and wanted to expand to Desktop applications.
I was thinking of create a screenshot tool like Jing or maybe a plugin for outlook to sync contact information with a service like Google.
What are your thoughts? My past experience is with web applications built in PHP.
I would try to start with something fairly contained, which only touched a few new technologies. For instance, if you want to learn Windows Forms, write something which uses that but doesn't need to talk to Outlook, Google, or the Win32 API. Once you've got the hang of Windows Forms, try one extra technology - try displaying your Google Contacts and do offline editing, for example. Then add another technology... etc.
In my experience it's hard enough to learn one new technology at a time - but that's far quicker than trying to learn two or more in one go. You inevitably get to the stage where you don't know where the problems are, and you have no confidence in any of your code because it's all new. This is particularly important if you're still fairly new to the language as well - although I'm glad to hear you started with some console apps :)
Sorry if that sounds like I'm being a wet blanket, and I realise it sounds like you'll take far longer to get to something useful that way, but I think you're more likely to be successful in the long run.
Find something that most importantly interests and excites you. If you pick something too boring that you don't care about you'll only give up before you get anywhere, and won't benefit at all. Don't do a rubbish project for the sake of learning a language. Do a good project, and do it in a new language as a side effect.
Make a notepad clone. While being fairly simple it will give you a primer in some basic Windows Forms mechanisms such as using menus and reacting on their events, getting input from controls for storage on disk, reading from disk and updating controls, using Docking and Anchoring and so on.
Twitter clients are the new hello world.
I read that somewhere the other day. I can't personally comment on its fitness for your goal.
Do something that you did before, but in another language. Then you won't have to think about most of the architecture of the particular task again, but you'll be able to compare the languages, the frameworks and their approaches.
I bet you'll learn a lot about your previous language as well doing this excercise.
A good project would be a simple windows form. You simply have a chance to put everything together. Or at least see a bigger picture.
You can make it as complicated as you want, without sticking to one area.
Suggesting a specific project is pointless. Think of something that interests you, or an application you want/need, then start making it - searching Stackoverflow/Google/MSDN/etc whenever you can't guess how to do a specific task.
For example, I had to make kiosk application that allowed customers to signup to a companies mailing-list. I tried using the Ruby framework Shoes, but it didn't work correctly on the laptop the application was to run on. Visual C# seemed like a better fit, and would almost certainly run correctly..
So I installed Visual C# Express, added a few labels and a button. I double clicked the button, and realised I didn't know the code to create a new WinForm window.. So I searched Google for "visual C# open new dialogue" or something, and I found out I had to add a new form, then call NewForm newwindow = new NewForm(); newwindow.show(); or similar.
Then, I added the username/email fields, then searched for "how to display an alert box" and checked I could display the form values.
That all worked, so now I had to decide how to store the emails. I had heard good things about LINQ to SQL, so looked into that, decided I wanted to use SQL Server CE (so I didn't have to install/run SQL Server on the laptop). That resulted in more searching around for how to make LINQ to SQL work with SQL Server CE..
Finally, I wanted to have a configuration panel to change the title/button strings etc (accessible via a certain keyboard shortcut).. A Google search revealed how to catch keystrokes, and I asked a Stackoverflow question about representing the settings (using a PanelView or something)
..anyway, the point of that slightly long, rambling and not terribly interesting story is.. You can learn many new technologies at once, as long as you have a specific application in mind (and you're determined to finish it!)
I learned C#, WinForms, SQL Server CE, LINQ to SQL, and simple application publishing stuff in a day - creating a functioning, useful application in the process - simply with a combination of prodding around, Google searches and Stackoverflow..
Examples could be Infragistics or DevExpress.
But I'm also looking for your opinions on other frameworks. It could even be WPF if that is your favorite.
Infragistics is very good. I think they have a better product for windows than the web. However, I get very upset using their products sometimes. I just want to find some hidden property, and it is impossible to find. They have way to many properties. Sure, you can do anything with their grid, but it should be easier. All of these vendors are leap frogging each other. You really have to compare all of them every year or two. I am currently using Infragistics on most web and windows project. If I could switch today, I would go to DevExpress for Web and Windows. Everything that Mark Miller and the guys at DevExpress produce is beautiful, and thoughtful. On a side point, you should check out CodeRush and Refacter. I may sound like a salesman, but I am not. I just could no longer code without CodeRush. It would feel like coding with one hand. If you are going to spend $1000 or more on a framework, you should also get CodeRush.
I've used Telerik RAD Controls for Asp.Net and it is a very comprehensive suite of controls that are easily converted to AJAX. The support is top notch, with the forum as a first place to go to for research before contacting the staff.
The client side API is fairly easy to understand, and they have good examples of mixed implementations with client and server side code.
I would say Infragistics
Haven't used it before, but I've heard good things about Telerik. My experience with the Infragistics Web components has been less than stellar. I found there were a lot of hidden features that I required, which were undocumented and had to go hunt around in the sample code for examples.
These toolkits can make sense for intranet applications but when you start providing it out on the web, the functionality can come at the cost of a bigger download for users. Just something to keep in mind.
What frameworks are you looking for? I currently use Janus Grids for grids on the winform side, but DevExpress has an awesome web grid that is amazing.
For current Winforms development my favorite is Infragistics. DevExpress seems to have more Silverlight controls in the works, but Infragistics may deliver.
I don't do much non-web development, but if I do I like to use gtk# for Mono (screenshots). It's much more fun and very easy to program then winforms. WPF looks good to, but I only tried an Hello World.
Infragistics has got good controls for Applications. WinGrid is one of the most important ones which would help you displaying information professionally and is quick.
the only drawback is the time consuming process of contacting their helpdesk or searching for the hidden properties. But they do work after you get to know them !
I would say go for DevExpress seems to be the most elegant, intuitive and well document suite out there.
To see their product offering in action demos.devexpress.com
Do the same for any component suite check out their demos and see which best suit you needs.