Tungsten.NuGet 1.0.0


Homepage: https://github.com/mode51/Tungsten

Platform: NuGet

Language: HTML

License: MIT

Keywords: Tungsten.NuGet, Tungsten

View on registry: https://www.nuget.org/packages/Tungsten.NuGet/1.0.0

Direct download link: https://www.nuget.org/api/v2/package/Tungsten.NuGet/1.0.0

Install: Install-Package Tungsten.NuGet -Version 1.0.0


Platforms: WinForms, WPF, Windows Universal, Windows Portable (PCL)

A C# library to make Windows Forms, WPF, Windows Universal and Windows Portable application development easier. See the Wiki page for details and use.

Tungsten is built with .Net Framework 4.5 Tungsten.Universal is built on Windows 10 (10.0; Build 10240)

To build Tungsten.Documentation, you will need to install the SHFB Visual Studio extension from NuGet.


  • Tungsten - A collection of useful classes for Winforms/WPF
  • Tungsten.Portable - A Portable version of Tungsten
  • Tungsten.Universal - A Universal version of Tungsten
  • Tungsten.RPC - Encrypted socket classes (client and server) to run code on a Tungsten.RPC server
  • Tungsten.Domains - Easily implement reloadable AppDomains in your application
  • Tungsten.LiteDb - LiteDb based CRUD for your POCO classes


  • Tungsten.Demo.Winforms - Uses tasks, Property and Gate to provide a responsive UI while handling background tasks
  • Tungsten.Demo.WPF - Illustrates how to use Tungsten in a WPF application
  • Tungsten.RPC.ServerDemo - Illustrates how to create an RPC server with Tungsten.RPC
  • Tungsten.RPC.ClientDemo - Illustrates how to create an RPC client with Tungsten.RPC
  • Tungsten.RPC.Host.Demo - Hosts the RPC server in a reloadable AppDomain
  • Tungsten.Domains.Demo - Illustrates using Tungsten.Domains to host a reloadable AppDomain

Tungsten / Tungsten.Portable / Tungsten.Universal Classes

  • W.Lockable<TValue> - A generic class to wrap a value in a thread-safe manner
  • W.Property<TValue> - A generic class providing a number of enhancements to a W.Lockable<TValue> value
    • Implements INotifyPropertyChanged
    • Adds IsDirty/MarkAsClean functionality
    • Supports a callback handler in the constructor so you don't have to use events
  • W.Property<TOwner, TValue> - Like Property<TValue> except that you can specify an Owner
  • Events and callback have type-strict sender (which is the Owner you specify)
  • W.PropertyHost - a base class which automates the IsDirty, MarkAsClean and InitializeProperties so you don't have to.
  • W.PropertyChangedNotifier - provides implementation of INotifyPropertyChanged in a base-class with overridable GetValue and SetValue methods
  • [W.PropertyHostNotifier] - aggregates PropertyHost and PropertyChangedNotifier
  • W.InvokeExtensions - A static class exposing InvokeEx extension methods (to ease InvokeRequired handling)
  • W.CallResult - A non-generic class which can be used to return true/false and an exception from a function
  • W.CallResult<TResult> - Like CallResult except that you can also specify a result
  • W.Threading.Thread - automates creating a thread with an Action
  • W.Threading.Thread<T> - like Thread, except Action is now Action<T>
  • W.Threading.Gate - similar to Thread, a Gate can be started some time after creation
  • W.Threading.Gate<T> - like Gate, exception Action is now Action<T>
  • W.ActionQueue<T> - Merges a Thread with a ConcurrentQueue. Executes the provided Action<T> or Func<T, bool> whenever an item is added to the ConcurrentQueue

Tungsten.RPC Classes

  • W.RPC.Server - An RPC server (see Tungsten.RPC.ServerDemo for use)
  • W.RPC.Client - An RPC client (see Tungsten.RPC.ClientDemo for use)


  • W.Domains.DomainLoader - A handy class to make reloadable AppDomains easy


  • W.LiteDb.LiteDbItem - A base class for your POCO classes (necessary for LiteDbMethods due to needing to know the _id field)
  • W.LiteDb.LiteDbMethods - CRUD methods for your POCO classes which inherit LiteDbItem


  • 1.0.0 - January 11, 2017 20:07

Project Statistics

SourceRank 0
Dependencies 0
Dependent projects 0
Dependent repositories 0
Total releases 1
Latest release
First release
Stars 1
Forks 0
Watchers 1
Contributors 1
Repo Size: 12 MB

Top Contributors See all


Something wrong with this page? Make a suggestion

Export .ABOUT file for this library

Last synced: 2017-01-13 09:34:37 UTC

Login to resync this project