|
namespace ReportingServicesDemo
{
using System;
using System.Windows.Data;
/// <summary>
/// Two way IValueConverter that lets you bind a property on a bindable object
/// that can be an empty string value to a dependency property that should
/// be set to null in that case
/// </summary>
public class StringFormatValueConverter : IValueConverter
{
private readonly string formatString;
/// <summary>
/// Creates a new <see cref="StringFormatValueConverter"/>
/// </summary>
/// <param name="formatString">Format string, it can take zero or one parameters, the first one being replaced by the source value</param>
public StringFormatValueConverter(string formatString)
{
this.formatString = formatString;
}
/// <summary>
/// Converts the <paramref name="value"/> to a formatted string using the
/// format specified in the constructor.
/// </summary>
/// <param name="value">The value to format.</param>
/// <param name="targetType">The target output type (ignored).</param>
/// <param name="parameter">Optional parameter (ignored).</param>
/// <param name="culture">The culture to use in the format operation.</param>
/// <returns>The formatted string</returns>
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
return string.Format(System.Globalization.CultureInfo.CurrentUICulture, this.formatString, value);
}
/// <summary>
/// Not supported.
/// </summary>
/// <param name="value">Ignored.</param>
/// <param name="targetType">Ignored.</param>
/// <param name="parameter">Ignored.</param>
/// <param name="culture">Ignored.</param>
/// <returns>No value is returned.</returns>
public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
throw new NotSupportedException();
}
}
}
|
By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.
If a file you wish to view isn't highlighted, and is a text file (not binary), please
let us know and we'll add colourisation support for it.
Ernesto Herrera is a Senior Developer, Architect with more than 12 years experience, actually working with Silverlight Line-of-Bussiness Applications, he holds a MCTS Web Application 2.0 Certification, and have a wide experience with sql server since the 6.5 version, on his free time he likes to play tennis with his wife,kids and friends, also enjoy playing Wii with his sons, he works at Sigo S.A., a retail business located at Margarita Island, Venezuela.