Удалить частичную проверку поведения Infragistics. WebDataGrid BoundCheckBoxField - PullRequest
0 голосов
/ 28 декабря 2011

Я использовал Infragistics WebDataGrid, у меня есть столбец BoundCheckBoxField, я хочу удалить частичную проверку поведения.только отметьте и снимите отметку

Я написал следующий класс,

public class BooleanConverter : IBooleanConverter 
{
    public BooleanConverter()
    {
        //
        // TODO: Add constructor logic here
        //
    }

    public object DefaultFalseValue
    {
        get { return false; }
    }

    public object DefaultTrueValue
    {
        get { return true; }
    }

    public bool IsFalse(object value)
    {
        if (value == null)
            return false;
        else
            return Boolean.Parse(value.ToString());
    }

    public bool IsTrue(object value)
    {
        if (value == null)
            return false;
        else
            return Boolean.Parse(value.ToString());
    }
}

`, и я называю это так:

     ((BoundCheckBoxField)this.uwGrid.Columns["Approval"]).ValueConverter = new BooleanConverter();

`

Но этоэто не работа.

Ответы [ 2 ]

2 голосов
/ 05 января 2012

Связанный флажок отображает любые данные, связанные с ним. По умолчанию для логического или логического поля, допускающего нулевое значение, оно отображает true как отмеченный, false как непроверенный и null как частичный. Это единственный раз, когда он должен отображаться, если у вас есть нулевые данные.

Если вам не нравится это поведение, вы можете присвоить столбцу другой ValueConverter. Это будет класс, который реализует IBooleanConverter. Вы бы сделали так, чтобы null становился отмеченным или не отмеченным.

1 голос
/ 02 мая 2012

Я уверен, что вы уже поняли это, но есть ошибка с вашим классом преобразователя значений (при условии, что вы хотите, чтобы значение null отображалось как false).Метод IsFalse должен быть таким:

public bool IsFalse(object value)
{
    if (value == null)
        return true;
    else
        return !Boolean.Parse(value.ToString());
}
...