我有一个列表框和一个像这样定义的dataTemplate:
function RegisterMessage($ms_data = array()) {
global $wo, $sqlConnect;
if ($wo['loggedin'] == false) {
return false;
}
if (empty($ms_data)) {
return false;
}
if (empty($ms_data['text']) || !isset($ms_data['text']) || strlen($ms_data['text']) < 0) {
if (empty($ms_data['media']) || !isset($ms_data['media']) || strlen($ms_data['media']) < 0) {
return false;
}
}
if (isset($ms_data['text'])) {
switch ($ms_data['text']]) {
case '1':
echo "one";
break;
case '2':
echo "two";
break;
case '3':
echo "three";
break;
}
}
$fields = '`' . implode('`, `', array_keys($ms_data)) . '`';
$data = '\'' . implode('\', \'', $ms_data) . '\'';
$query = mysqli_query($sqlConnect, " INSERT INTO " . T_MESSAGES . " ({$fields}) VALUES ({$data})");
if ($query) {
$message_id = mysqli_insert_id($sqlConnect);
return $message_id;
} else {
return false;
}
}
我使用linq查询填充列表框:
<Window.Resources>
<DataTemplate x:Key="propertyTemplate">
<StackPanel Margin="8" Orientation="Horizontal">
<CheckBox Name="Chosen"/>
<TextBlock Text="{Binding Path=MAP}" Margin="10,0,0,0"/>
</StackPanel>
</DataTemplate>
</Window.Resources>
<ListBox x:Name="listBox" HorizontalAlignment="Left" Height="100" Margin="388,203,0,0" VerticalAlignment="Top" Width="522"
ItemsSource="{Binding}"
ItemTemplate="{StaticResource propertyTemplate}"/>
我想检查并设置列表框中每个项目的“选择”复选框的值。我有办法做到这一点吗?
答案 0 :(得分:1)
不要这样做,将IsChecked
绑定到项目类的属性,然后遍历源列表。