У меня есть gridview в моем списке (xaml) Я установил выделенный элемент в своем списке по значению индекса. Это прекрасно работает.Установить фокус на выбранный элемент списка
Теперь я хочу, чтобы фокус клавиатуры находился на выбранном элементе.
Я могу установить фокус на самом представлении, но не на выбранный элемент в списке.
// Set selected item at index : i
listview1.SelectedIndex = i;
// Sets focus to listview
listview1.Focus();
// Try to set focus to selected item
ListViewItem myitem = listview1.Items[i] as ListViewItem;
myitem.Focus();
dgrid1.xaml
<ListView Name="listview1" >
<ListView.View>
<GridView ColumnHeaderToolTip="Multiple Category Information">
<GridViewColumn DisplayMemberBinding="{Binding Path=Enquiry_Number}" Header="Enquiry number"/>
<GridViewColumn DisplayMemberBinding="{Binding Path=Consignee_Ref}" Header="Consignee reference"/>
<GridViewColumn DisplayMemberBinding="{Binding Path=Booking_Reference}" Header="Booking reference"/>
<GridViewColumn DisplayMemberBinding="{Binding Path=Contract_Number}" Header="Contract Number"/>
<GridViewColumn DisplayMemberBinding="{Binding Path=Invoice_Number}" Header="Invoice Number"/>
<GridViewColumn DisplayMemberBinding="{Binding Path=Date_Invoice}" Header="Invoice Date"/>
<GridViewColumn DisplayMemberBinding="{Binding Path=Status}" Header="Status"/>
<GridViewColumn DisplayMemberBinding="{Binding Path=Period_Enquiry}" Header="Period Enquiry"/>
<GridViewColumn DisplayMemberBinding="{Binding Path=Consignee}" Header="Consignee"/>
</GridView>
</ListView.View>
</ListView>
dgrid1.xaml.cs
// Call the DataManager Class which will collect the data and fill the data set with it
DataManager.BindFilteredData(dts);
public static void BindFilteredData(DataSet dts)
{
using (SqlConnection connection = new SqlConnection(ConfigurationManager.ConnectionStrings["ConString"].ConnectionString))
{
sql = "SELECT Enquiry_Number, Consignee_Ref, Booking_Reference, Contract_Number, Invoice_No, Date_Invoice, [Status], Period_Enquiry, Consignee FROM ConsHead";
using (SqlDataAdapter adapter = new SqlDataAdapter(sql, connection))
{
adapter.Fill(dts);
}
}
}
Вы не можете использовать listview1.Selecteditem.focus? – Terry
listview1.SelectedItem.focus(); Это дает «объект не содержит определения для« фокуса »и никакого метода расширения ... и т. Д. –
вы можете показать некоторый xaml (вложенное gridview в listview). Позволяет мне скопировать вашу проблему. – Terry