Привязка Elmish.Wpf для LiveCharts LabelFormatter

Я пытаюсь преобразовать пример LiveCharts для Базовая линейная диаграмма для использования с Elmish.Wpf

У меня есть привязки ко всему, кроме YFormatter. Какую привязку следует использовать?

type Model = {
   AllSeries: SeriesCollection
   Labels: string[]
   Formatter: ???
}

let init() = (
    AllSeries = 
       let series = new SeriesCollection()
       series.Add(new LineSeries(Title="S1", Values=new ChartVAlues<int>(seq {4; 6; 5})))
       series
    Labels = [| "Jan"; "Feb"; "Mar" |]
    Formatter = ???
}

let bindings () : Binding<Model, MessageType> list = [
    "AllSeries" |> Binding.oneWay(fun m -> m.AllSeries)
    "Labels" |> Binding.oneWay(fun m-> m.Labels)
    "YFormatter" |> ?????
]

XAML соответствует примеру базовой линейной диаграммы.

<lvc:CartesianChart Series="{Binding AllSeries}">
    <lvc:CartesianChart.AxisY>
        <lvc:Axis Title="Sales" LabelFormatter="{Binding YFormatter}"></lvc:Axis>
    </lvc:CartesianChart.AxisY>
    <lvc:CartesianChart.AxisX>
        <lvc:Axis Title="Month" Labels="{Binding Labels}"></lvc:Axis>
     </lvc:CartesianChart.AxisX>
</lvc:CartesianChart>

person Paul Smith    schedule 12.04.2021    source источник


Ответы (1)


Получил это на работу

Модель вообще не нуждается в Formatter

так что init не при чем

привязки имеет

"YFormatter" |> Binding.oneWay(fun m -> Func<Double,_> (fun d -> d.ToString("C")))
person Paul Smith    schedule 12.04.2021
comment
Хорошая работа, отвечая на свой вопрос. Я ведущий сопровождающий Elmish.WPF. Если у вас есть другие вопросы, не стесняйтесь задавать их на нашем GutHub. - person Tyson Williams; 13.04.2021