Для хранения информации
SharedPreferences preferences = getSharedPreferences(PREFS_NAME,Context.MODE_PRIVATE);
SharedPreferences.Editor editor = preferences.edit();
editor.putString("username", username.getText().toString());
editor.putString("password", password.getText().toString());
editor.putString("logged", "logged");
editor.commit();
Для сброса настроек
SharedPreferences.Editor editor = preferences.edit();
editor.clear();
editor.commit();
DataGrid
имеет свойство Attached ScrollViewer.CanContentScroll
, которое управляет этим поведением. Чтобы получить плавную прокрутку, вам нужно установить False
.
<DataGrid Grid.Row="1"
CanUserAddRows="False"
CanUserDeleteRows="False"
CanUserReorderColumns="False"
CanUserSortColumns="False"
SelectionUnit="FullRow"
HeadersVisibility="None"
Name="grd"
GridLinesVisibility="None"
ItemsSource="{Binding}"
AutoGenerateColumns="False"
ScrollViewer.CanContentScroll="False">
</DataGrid>
Я не играл с DataGrid явно, но факт, что использование ScrollViewer.CanContentScroll = False
заменяет стандартный ItemsPanelTemplate
, который использует VirtualizedStackPanel
] с помощью обычной StackPanel
. Он будет плавно прокручиваться, но будет отображать каждый элемент, даже если он не виден.
Это может полностью убить производительность, если вы имеете дело со сложным визуальным деревом или большими наборами данных.