Добавьте слушателя для всех событий элемента в WPF

У меня есть только элементарные знания о отображении типов данных R (в частности, возвращаемых функцией class()) на типы данных Spark. Тем не менее, следующая функция работает, как я ожидаю. Надеюсь, другие найдут его полезным / улучшит его:

get_spark_data_types_from_data_frame_types <- function(df) {



    r_types <-
        c("logical", "numeric", "integer", "character", "list", "factor")

    spark_types <-
        c("boolean", "double", "integer", "string", "array", "string")

    types_in <- sapply(df, class)    


    types_out <- spark_types[match(types_in, r_types)]

    types_out[is.na(types_out)] <- "string" # initialise to character by default

    names(types_out) <- names(df)

    return(types_out)

}
5
задан alex2k8 11 March 2009 в 13:08
поделиться

2 ответа

Попробуйте это для получения всех событий на Типе кнопки... Можно заменить другим типом.

RoutedEvent[] events = EventManager.GetRoutedEventsForOwner(typeof(Button));

foreach (RoutedEvent e in events)
   elem.AddHandler(e, handler);

Можно также заменить следующим для получения ВСЕХ направленных событий для ВСЕХ типов, но это было бы настоящим списком!

RoutedEvent[] events = EventManager.GetRoutedEvents();
9
ответ дан 13 December 2019 в 05:43
поделиться

Можно использовать метод RegisterClassHandler EventManager для статичного слушания всех элементов сразу :)

EventManager.RegisterClassHandler(typeof(your class), Button.ClickEvent, new RoutedEventHandler(OnButtonClick));

static void OnButtonClick(object sender, RoutedEventArgs e)
{
    //Do awesome stuff with the button click
}
2
ответ дан 13 December 2019 в 05:43
поделиться
Другие вопросы по тегам:

Похожие вопросы: