Nano Hash - криптовалюты, майнинг, программирование

Найти значение в списке с помощью linq?

Привет всем, я работаю над приложением для Windows Phone, и я изо всех сил пытаюсь получить доступ к внутреннему элементу списка, когда пользователь коснется определенного элемента в списке, я получаю вывод, подобный этому

введите здесь описание изображения

например: предположим, что пользователь нажмет [0]элемент индекса, который я хочу получить [0]1,1480,[2]749,[3]270 и когда пользователь нажмет 1элемент индекса, который я хочу получить, например [0]1,1810, [2]1080,[3]271

UI

 <phone:LongListSelector Name="list_professions"  
                         LayoutMode="List"   
                         Tap="list_professions_Tap" 
                         Padding="5,15,5,15" 
                         IsGroupingEnabled="True">
  </phone:LongListSelector>

Класс Json и переменная

   private class RootObject
    {
        public string flag { get; set; }
        public string message { get; set; }
        public Result result { get; set; }
    }
    private class Result
    {
        public List<List<string>> Professions { get; set; }
    }

отображение данных в Listbox

  void onResponse(object sender, DownloadStringCompletedEventArgs e)
    {
        try
        {
            onLoadingStope(sender, e);
            var rootObject = JsonConvert.DeserializeObject<RootObject>(e.Result);

            string flag = rootObject.flag;
            string msg = rootObject.message;
            if (flag.Equals("1"))
            {

                foreach (var temp in rootObject.result.Professions[0])
                {

                    profess.Add(new Result() { Professions = rootObject.result.Professions });
                    var flattenProfessions = rootObject.result.Professions.SelectMany(x => x).ToList();
                    list_professions.ItemsSource = rootObject.result.Professions;

                }
            }
            else
            {
                Console.WriteLine("Error message - " + msg);
                MessageBox.Show("Oops! response : " + msg);
            }
        }
        catch(Exception ex)
        {

        }


    }

и List Tap Здесь я столкнулся с проблемой доступа к сгруппированному элементу, как получить доступ к сгруппированному элементу, когда пользователь коснется элемента

   private void list_professions_Tap(object sender, System.Windows.Input.GestureEventArgs e)
    {


    }

  • Что вы пробовали? Если вы не покажете, что приложили некоторые усилия для решения этой проблемы самостоятельно, вы не получите очень хороших ответов здесь, на SO. 27.05.2015
  • Здравствуйте, Питер Лиллеволд, сэр, я хочу получить доступ к элементу внутреннего списка на основе индекса внешнего списка. 27.05.2015
  • Вопрос был: покажи свою попытку; а что не работает. 27.05.2015
  • Сэр L-Three, я не могу получить весь элемент внутреннего списка, когда пользователь нажмет на определенный элемент. 27.05.2015
  • Предоставьте нам пример кода того, как вы думаете, и мы вам поможем 27.05.2015
  • @user Если вы связываете LongListSelector с моделью, в событии касания вы получаете выбранный элемент, вы можете преобразовать его в свою модель и получить внутренние элементы. Или отфильтруйте источник элемента с помощью клавиши, которую нажал пользователь. Я предполагаю, что у вас есть уникальный ключ 27.05.2015
  • Сэр Эльдхо, у меня нет уникального ключа, у меня есть только группа элементов, и я не следую модели MVVM. 27.05.2015
  • вы будете группировать элементы с уникальной группой, не можете ли вы сделать фильтр для источника с тем же самым, выбранная группа МОЖЕТ попасть в элемент Tapped. Пожалуйста, предоставьте код, в котором вы устанавливаете источник для списка, и укажите свою модель. 27.05.2015
  • Ваше событие касания должно отправлять только один элемент в качестве поведения по умолчаниюprivate void Item_tap(object sender, RoutedEventArgs e) { var element = (FrameworkElement)sender; } пройти через этот longlistselector_tap 27.05.2015
  • Эльдо, сэр, спасибо, но сэр, когда я нажму на элемент, я получу индекс этого элемента, а также получу внутренний список всех элементов через основной индекс. 27.05.2015
  • Это в основном ваш вчерашний вопрос с некоторыми дополнительными детали, но вы по-прежнему не предоставляете необходимые детали. Что вы хотите сделать - к вашему сведению, я хочу получить доступ к элементу внутреннего списка на основе индекса внешнего списка, это НЕ хороший ответ на этот вопрос. 27.05.2015

Ответы:


1

Вы не должны использовать событие Tap для LongListSelector, а вместо этого используйте DataTemplate и использовать событие Tap элементов в нем. Что-то вроде этого:

<phone:PhoneApplicationPage.Resources>
    <DataTemplate x:Key="TileDataTemplate">
        <Grid Background="{StaticResource TransparentBrush}"
              Margin="0, 0, 0, 12" Height="60">
            <TextBlock Text="{Binding Name}" Margin="60, 10, 0, 0" FontSize="24" Height="60">
            </TextBlock>
            <Image x:Name="GetName" Tap="GetName_Tap" Grid.Column="0" Source="/Assets/AppBar/Delete.png" Height="40" Width="40"
                            Margin="0, 6, 0, 5" HorizontalAlignment="Right" VerticalAlignment="Top" />
        </Grid>
    </DataTemplate>
</phone:PhoneApplicationPage.Resources>

Обратите внимание на Tap на Image.

<phone:LongListSelector
                    SelectionChanged="MainLongListSelector_SelectionChanged"
                    Margin="10,6,0,0"
                    ItemsSource="{Binding Staff.Items}"
                    LayoutMode="Grid"
                    GridCellSize="400,80"
                    ItemTemplate="{StaticResource TileDataTemplate}"
                    />

Вот как получить DataContext события:

private void GetName_Tap(object sender, System.Windows.Input.GestureEventArgs e)
{
   var element = (FrameworkElement)sender;
   StaffData data = (StaffData)element.DataContext;
   MessageBox.Show(data.Name);
}
27.05.2015
Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..