private void sizeList_SelectionChanged(object sender, SelectionChangedEventArgs e) { FontSizeListItem item = sizeList.SelectedItem as FontSizeListItem; if (item != null) { SelectedFontSize = item.SizeInPixels; } }
private void sizeTextBox_TextChanged(object sender, TextChangedEventArgs e) { double sizeInPoints; if (double.TryParse(sizeTextBox.Text, out sizeInPoints)) { double sizeInPixels = FontSizeListItem.PointsToPixels(sizeInPoints); if (!FontSizeListItem.FuzzyEqual(sizeInPixels, SelectedFontSize)) { SelectedFontSize = sizeInPixels; } } }
// Handle changes to the SelectedFontSize property private void OnSelectedFontSizeChanged(double sizeInPixels) { // Select the list item, if the size is in the list. double sizeInPoints = FontSizeListItem.PixelsToPoints(sizeInPixels); if (!SelectListItem(sizeList, sizeInPoints)) { sizeList.SelectedIndex = -1; } // Set the text box contents if it doesn't already match the current size. double textBoxValue; if (!double.TryParse(sizeTextBox.Text, out textBoxValue) || !FontSizeListItem.FuzzyEqual(textBoxValue, sizeInPoints)) { sizeTextBox.Text = sizeInPoints.ToString(); } }