Curve 객체 목록이 포함 된 Log 객체가 있습니다. 각 커브에는 Name 속성과 double의 배열이 있습니다. 이름이 열 머리글과 그 아래의 데이터에 있어야합니다. 데이터 컨트롤을 가진 사용자 정의 컨트롤이 있습니다. 다음은 XAML입니다. 내가 그들을 열을 만들고 이름을하는 방법을 알아 낸 것,하지만 데이터를 바인딩하는 방법을 알아 냈하지 않은 뒤에 코드에서 배열을 WPF 데이터 격자의 열에 바인딩하는 방법
<UserControl x:Class="WellLab.UI.LogViewer"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
mc:Ignorable="d"
d:DesignHeight="500" d:DesignWidth="500">
<Grid>
<StackPanel Height="Auto" HorizontalAlignment="Stretch" Margin="0" Name="stackPanel1" VerticalAlignment="Stretch" Width="Auto">
<ToolBarTray Height="26" Name="toolBarTray1" Width="Auto" />
<ScrollViewer Height="Auto" Name="scrollViewer1" Width="Auto" HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Visible" CanContentScroll="True" Background="#E6ABA4A4">
<DataGrid AutoGenerateColumns="True" Height="Auto" Name="logDataGrid" Width="Auto" ItemsSource="{Binding}" HorizontalAlignment="Left">
</DataGrid>
</ScrollViewer>
</StackPanel>
</Grid>
.
public partial class LogViewer
{
public LogViewer(Log log)
{
InitializeComponent();
foreach (var curve in log.Curves)
{
var data = curve.GetData();
var col = new DataGridTextColumn { Header = curve.Name };
logDataGrid.Columns.Add(col);
}
}
}
아무것도 근처에도 오지 이후, 나는 배열 "데이터를"바인딩 사용하려고 코드를 보여도 못해. 나는 간단한 것을 놓치고있을 것이라고 확신하지만, 웹 검색을 몇 시간 동안 해본 후에, 나는 대답을 간청해야만한다.
가능 중복 된 [I 배열 요소를 표시하는 방법 WPF DataGrid에서?] (http://stackoverflow.com/questions/5582226/how-can-i-display-array-elements-in-a-wpf-datagrid) –
@dbaseman : 배열에 도움이되지 않습니다. b가 없으므로 그것들을 다루기위한 논리. –
@ H.B. 해명 해줘서 고마워. 나는 그 질문을 오해했다. – McGarnagle