Home / Tag Archives: C#

Tag Archives: C#

HMI with C# and WPF part 2: Navigation with PRISM

This article is part of a series that explains how to write an HMI with C# and WPF. Part 1: getting started with MVVM and plc driver Part 2: this article Navigation in WPF is one of the most complicated topics, because it can be implemented in many different ways, ...

Read More »

WPF navigation with dependency injection (DI/IOC): part 2

This article explains how to create dialogs and modal windows in a WPF application that uses dependency injection. We will use services and factories to abstract the creation of windows and MessageBoxes. We will also see how to write unit tests for MVVM navigation. This is the second part of ...

Read More »

WPF navigation with dependency injection (DI/IOC): part 1

This article explains some approaches to create the architecture for a WPF application when using dependency injection. In particular we will see how to navigate through views and how to deal with dialogs, both windows and system dialogs. This article is divided in 2 parts. Part 1 (this article): Creation ...

Read More »

Create an MSI/Setup Package for C# with WiX Toolset

WiX Toolset is a free installer. It is xml-based, which means that instead of a UI you can use a single xml file to create your installation package. There is a wide choice of installers on the market, but I prefer WiX, especially when I need to distribute large applications ...

Read More »

Communication with Siemens S7 Plc with C# and S7.Net plc driver

In this article I explain how to implement a Siemens S7 plc driver by using the open source driver S7.Net. You can find S7.Net sources on GitHub: https://github.com/killnine/s7netplus. How to video Summary Why S7.Net: features and capabilities of the driver Documentation on the driver and S7 protocol Getting started with ...

Read More »

WPF touch-friendly controls for resistive touch-screen

While it’s fairly common, when working in automation field, to make software that runs on resistive touch-screens, I admit that it’s not a trivial task to make a good user experience, especially with a desktop technology like WPF and C#. In this article I posted some of the problems that ...

Read More »

Snap7: an open source Siemens S7 communication library

In a recent comment i came across Snap7, a new Siemens S7 open source library to communicate with Siemens Plc S7-300, S7-400, S7-1200 and S7-1500. It supports many languages (C++, C# and more) and it’s multi-platform. The library can be downloaded from http://snap7.sourceforge.net and the official page of the project ...

Read More »

OPC XML DA Client with C#

With this article I want to show how to create a webservice in C# to communicate with an OPC-XML-DA server, like the one of SIMOTION D plc. OPC-XML-DA is a communication protocol based on SOAP and XML. To connect to a OPC-XML-DA server you need a WSDL file, that defines ...

Read More »