Встроенный WPF IValueConverters

Вы можете использовать вместо realloc

char** AddingToTheBook(char** original, size_t oldsize, char *number)
{
    char** tmp = realloc(**original, (oldsize  + 1) * sizeof(char *));

    if(tmp)
    {
        tmp[oldsize] = malloc(strlen(number) + 1'
        if(tmp[oldsize])
        {
            strcpy(tmp[oldsize], number);
        }
        else
        {
            /* do something for example realloc back to the old size */
            tmp = NULL;
        }
    }
    return tmp;
}

пример правильного использования

    char **tmp = AddingToTheBook(book, size, "Test String")

    if(tmp)
    {
        book = tmp;
        size++;
    }
    else
    {
        /* do something adding to book failed */
    }
81
задан Uwe Keim 8 June 2019 в 07:09
поделиться

2 ответа

Я сделал быстрый трал с помощью Обозревателя объектов, и это - то, что я имею.

Полученный от IValueConverter:

System.Windows.Controls.AlternationConverter
System.Windows.Controls.BooleanToVisibilityConverter
System.Windows.Documents.ZoomPercentageConverter
System.Windows.Navigation.JournalEntryListConverter

Xceed.Wpf.DataGrid.Converters.CurrencyConverter
Xceed.Wpf.DataGrid.Converters.DateTimeToStringConverter
Xceed.Wpf.DataGrid.Converters.GreaterThanZeroConverter
Xceed.Wpf.DataGrid.Converters.IndexToOddConverter
Xceed.Wpf.DataGrid.Converters.IntAdditionConverter
Xceed.Wpf.DataGrid.Converters.InverseBooleanConverter
Xceed.Wpf.DataGrid.Converters.LevelToOpacityConverter
Xceed.Wpf.DataGrid.Converters.MultimodalResultConverter
Xceed.Wpf.DataGrid.Converters.NegativeDoubleConverter
Xceed.Wpf.DataGrid.Converters.NullToBooleanConverter
Xceed.Wpf.DataGrid.Converters.SourceDataConverter
Xceed.Wpf.DataGrid.Converters.StringFormatConverter
Xceed.Wpf.DataGrid.Converters.ThicknessConverter
Xceed.Wpf.DataGrid.Converters.TypeToBooleanConverter
Xceed.Wpf.DataGrid.Converters.TypeToVisibilityConverter
Xceed.Wpf.DataGrid.Converters.ValueToMaskedTextConverter

Полученный от [1 121]:

System.Windows.Controls.BorderGapMaskConverter
System.Windows.Navigation.JournalEntryUnifiedViewConverter
System.Windows.Controls.MenuScrollingVisibilityConverter

Microsoft.Windows.Themes.ProgressBarBrushConverter
Microsoft.Windows.Themes.ProgressBarHighlightConverter

Примечание Xceed (никакое соединение) в свободном доступе со своим DataGrid. А также это там - некоторый умный материал вокруг подобного преобразователь отладки . Я также использовал последний IValueConverter, и я уверен, что существует некоторое дальнейшее совершенство функции лямбды, которое будет найдено, также.

94
ответ дан Palec 24 November 2019 в 09:40
поделиться

Перед 3,5 SP1 IValueConverter требовался для строкового форматирования. Теперь, можно использовать свойство StringFormat при Привязке, чтобы сделать это.

От страницы MSDN:

<DataTemplate>
  <TextBlock>
    <TextBlock.Text>
      <MultiBinding  StringFormat="{}{0} -- Now only {1:C}!">
        <Binding Path="Description"/>
        <Binding Path="Price"/>
      </MultiBinding>
    </TextBlock.Text>
  </TextBlock>
</DataTemplate>
26
ответ дан Uwe Keim 24 November 2019 в 09:40
поделиться
Другие вопросы по тегам:

Похожие вопросы: