Моя компания застряла на .Net 3.0. Задача, которую я пытаюсь решить, проста, мне нужно привязать свойство IsChecked CheckBoxResolvesCEDAR к CompletesCEDARWork в моем классе Audio. Чем больше я читаю об этом, тем больше мне кажется, что я должен объявить CompletesCEDARWork как свойство зависимости, но не могу найти хороший пример того, как это делается. Я нашел этот пример, но когда я вставил его в код, я получил ошибку «не определено» для GetValue, и я не смог выяснить, что должен представлять MyCode. Любая помощь / примеры будут с благодарностью.
Спасибо
Public Shared ReadOnly IsSpinningProperty As DependencyProperty = DependencyProperty.Register("IsSpinning", GetType(Boolean), GetType(MyCode))
Public Property IsSpinning() As Boolean
Get
Return CBool(GetValue(IsSpinningProperty))
End Get
Set(ByVal value As Boolean)
SetValue(IsSpinningProperty, value)
End Set
End Property
Вот мой срезанный аудио класс в его нынешнем виде.
Imports System.Xml
Система импорта
Импортирует System.IO
Импортирует System.Collections.ObjectModel
Импортирует System.ComponentModel
Public Class Audio
Private mXMLString As String
Private mTarpID As Integer
Private mStartTime As Date
Private mEndTime As Date
Private mAudioArray As Byte()
Private mFileXMLInfo As IO.FileInfo
Private mFileXMLStream As IO.FileStream
Private mFileAudioInfo As IO.FileInfo
Private mDisplayText As String
Private mCompletesCEDARWork As Boolean
Private Property CompletesCEDARWork() As Boolean
Get
Return mCompletesCEDARWork
End Get
Set(ByVal value As Boolean)
mCompletesCEDARWork = value
End Set
End Property
А вот моя таблица данных XML, в которой я установил привязку.
<DataTemplate x:Key="UploadLayout" DataType="Audio">
<Border BorderBrush="LightGray" CornerRadius="8" BorderThickness="1" Padding="10" Margin="0,3,0,0">
<StackPanel Orientation="Vertical">
<TextBlock Text="{Binding Path=DisplayText}">
</TextBlock>
<StackPanel Orientation="Horizontal" VerticalAlignment="Center">
<TextBlock Text="TARP ID" VerticalAlignment="Center"/>
<ComboBox x:Name="ListBoxTarpIDs"
ItemsSource="{Binding Path=TarpIds}"
SelectedValue="{Binding Path=TarpID}"
BorderBrush="Transparent"
Background="Transparent" >
</ComboBox>
</StackPanel>
<CheckBox x:Name="CheckBoxResolvesCEDAR"
Content="Resolves CEDAR Work"
IsChecked="{Binding ElementName=Audio,Path=CompletesCEDARWork,Mode=TwoWay}"/>
</StackPanel>
</Border>
</DataTemplate>