background preloader

C#

Facebook Twitter

i00 Spell Check and Control Extensions - No Third Party Components Required! Download source and demo project for version 20140111 Introduction I wanted a spell check that I could use in .NET, so like most people would have done, I Googled.

i00 Spell Check and Control Extensions - No Third Party Components Required!

After many hours of fruitless searching, I decided to make my own; sure there are plenty of spell checkers out there, but I didn't want one that relied on 3rd party components such as Word or require Internet connectivity to work. Introducing i00 .NET Spell Check, the first and only VB.NET Spell Check written completely in VB! Not only that, it is also open source, and easy to use. Eventually, this project progressed even further into a generic control extension plugin that provides plugins for text box printing, translation, speech recognition and dictation plus more; while also providing a simple method for users to write their own extensions.

Screenshots Spell check with definitions In-menu word definitions and Change to... Adding words to dictionary Custom content menus Crossword generator Options Owner draw and RTB support Plugins. Free courseware for professors and instructors from Microsoft - Go DevMENTAL. UI Automation: Automating key strokes using .NET and Win32 API. Thursday, January 10, 2013 9:16 PM Win32 API offers a lot of functionality for Windows platform, which the .NET Framework doesn’t have for good reason – One of them being ‘managed’.

UI Automation: Automating key strokes using .NET and Win32 API

However, that doesn’t stop us from doing some unsafe things! We can always build a wrapper for Win32 API and then call those functions directly from .NET. Let us evaluate one of such area which requires calling Win32 API functions from .NET. That area is ‘Simulating UI Automation’. Our objective for this exercise is : “Launch an instance of Notepad and write ‘hello’ in it”; (Sorry for the semicolon, it has become a habit So let us start with creating a C# Console application. Note: Make sure you have added the following namespace. using System.Runtime.InteropServices; The FindWindow method is used to find a handle to any window by its application class name and its title. C# - Generic class with self-referencing type constraint. CodeHaacks/src/MiscUtils/StringEquivalent.cs at master · Haacked/CodeHaacks.

Dealing with primitive obsession. One code smell I tend to miss a lot is primitive obsession.

Dealing with primitive obsession

Primitives are the building blocks of data in any programming language, such as strings, numbers, booleans, and so on. Many times, primitives have special meaning, such as phone numbers, zip codes, money, etc. Nearly every time I encounter these values, they're exposed as simple primitives: public class Address { public string ZipCode { get; set; } } But there are special rules for zip codes, such as they can only be in a couple formats in the US: "12345" or "12345-3467".

Beyond what Fowler walks through, I need to add a couple more features to my data object to make it really useful. Creating the data object First I'll need to create the data object by following the steps in Fowler's book. This is pretty much where Fowler's walkthrough stops. Now more difficult to deal with Zip in its native format, strings Zip codes used to be easier to display Cleaning it up public override string ToString() { return _value; } Primitive Obsession, Custom String Types, and Self Referencing Generic Constraints.

I was once accused of primitive obsession.

Primitive Obsession, Custom String Types, and Self Referencing Generic Constraints

Especially when it comes to strings. Guilty as charged! There’s a lot of reasons to be obsessed with string primitives. Many times, the data really is a just a string and encapsulating it in some custom type is just software “designerbation.” Also, strings are special and the .NET Framework heavily optimizes strings through techniques like string interning and providing classes like the StringBuilder.

But in many cases, a strongly typed class that better represents the domain is the right thing to do. Home Page. Extracting noun phrases with contextual relevance in .NET using OpenNLP. A few months ago I was working on a project that had a word cloud-like feature.

Extracting noun phrases with contextual relevance in .NET using OpenNLP

A word cloud is an interesting way to visually represent a popular theme or topic. I had a dataset of user reviews from another project that we wanted to parse and use. This began my first exposure to Natural Language Processing (NLP) and other advanced text analytics tools. Notes from an NLP spike I started by extracting nouns from our dataset and calculating frequency. Document Databases : A look at them. DocumentDBs.zip : NOTE this code will not run unless you download and reference the prerequisites mentioned in this article - 39.3 KB I don't know how many of you work with SQL.

Document Databases : A look at them

Loads? Well I do, as we know it's a relational database which we can store um well relational SQL data types in, such as INT/CHAR/NVARCHAR etc etc, I am sure you all know what I am talking about and have used relational databases loads in the past. Do you think there are other sort of databases out there? NET TECHNOLOGY BLOG – Daily Problems – How to Write a Filewatcher in Three Possible Ways. Excellibrary - Excel fileformat library.

ObjectToObject Map

Linq.