Telerik Forums
UI for WPF Forum
1 answer
102 views

Hello,

I have this GridViewDataColumn "Real Quantity" which has a CellTemplate with a RadMaskedNumericInput,. If we put in a value (e.g. 0.02) and save it, it will fire an AggregateFunction which calculates the Qty remaining to 4.76. I tried to make this happen in real time while typing in a value without having to save and reload the page to show the calculation .

Does anyone have any idea how i could do this?

Regards,

Matthias

Martin Ivanov
Telerik team
 answered on 25 May 2022
2 answers
224 views

Hi Telerik team,

I have a RadCartesianChart which i hided the values labels (see attached picture-1 ). I would to have a behavior like that: when mouse hover on a legend item (Cash, Time deposit, Shares, Bond... ) in the bottom of chart, the chart will display the corresponding line AND THE VALUES LABELS on the line (like you can see picture-2).

Would you please help to realize that?

 

Many thanks 

 

minh
Top achievements
Rank 2
Iron
Iron
Iron
 answered on 24 May 2022
1 answer
97 views

I have a RadGridView with a frozen first column, so that the user can see that value even when the grid is scrolled horizontally.

I would like to print the grid.  If the grid is wide enough that it extends to multiple pages, I would like that first column repeated on the additional pages.

I am using ExportToWorkbook and then RadSpreadsheet.Print to print.  I have tried using worksheet.ViewState.FreezePanes on the first column.  That doesn't cause the column to repeat when printed.  

Is there a way to cause the first column to be repeated when the printout is wider than a single page?

Tanya
Telerik team
 answered on 23 May 2022
0 answers
134 views

Hi

I have a DataGrid where the XAML is:

                            <telerik:RadGridView Grid.Column="2" 
                                                 NewRowPosition="Bottom"
                                                 GroupRenderMode="Flat"
                                                 ShowGroupPanel="False"
                                                 AutoGenerateColumns="False"
                                                 SelectedItem="{Binding SelectedDevice.SelectedDataConfiguration, Mode=TwoWay}"
                                                 ItemsSource="{Binding SelectedDevice.DataConfiguration}"
                                                 IsSynchronizedWithCurrentItem="True"
                                                 x:Name="DataConfigurationGrid"
                                                 Margin="2">
                                <telerik:RadGridView.Columns>
                                    <telerik:GridViewComboBoxColumn Header="Data page" DataMemberBinding="{Binding MethodId, Mode=TwoWay}" ItemsSourceBinding="{Binding DataContext.DataDefinitions, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type local:SatelliteManager}}}" DisplayMemberPath="Name"/>
                                    <telerik:GridViewComboBoxColumn Header="Class" DataMemberBinding="{Binding ClassId, Mode=TwoWay}" ItemsSource="{Binding SelectedDevice.SelectedTournament.Classes}" IsReadOnly="{Binding SelectedDevice.SelectedDataConfiguration.MethodId.CanFilterClass, Converter={StaticResource InvertedBooleanConverter}}" IsEnabled="{Binding SelectedDevice.SelectedDataConfiguration.MethodId.CanFilterClass}" DisplayMemberPath="Name" SelectedValueMemberPath="Id"/>
                                    <telerik:GridViewComboBoxColumn Header="Group" 
                                                                    DataMemberBinding="{Binding GroupId, Mode=TwoWay}" 
                                                                    IsReadOnly="{Binding SelectedDevice.SelectedDataConfiguration.MethodId.CanFilterGroup, Converter={StaticResource InvertedBooleanConverter}}" 
                                                                    IsEnabled="{Binding SelectedDevice.SelectedDataConfiguration.MethodId.CanFilterGroup}" 
                                                                    DisplayMemberPath="DescriptiveName" 
                                                                    SelectedValueMemberPath="Id">
                                        <telerik:GridViewComboBoxColumn.ItemsSource>
                                            <MultiBinding>
                                                <MultiBinding.Converter>
                                                    <converters:GroupsByDivisionConverter/>
                                                </MultiBinding.Converter>
                                                <Binding Path="SelectedDevice.SelectedTournament.Groups"/>
                                                <Binding Path="SelectedDevice.SelectedDataConfiguration.ClassId"/>
                                            </MultiBinding>
                                        </telerik:GridViewComboBoxColumn.ItemsSource>
                                    </telerik:GridViewComboBoxColumn>
                                    <telerik:GridViewComboBoxColumn Header="Pitch" DataMemberBinding="{Binding PitchId, Mode=TwoWay}" ItemsSource="{Binding SelectedDevice.SelectedTournament.Pitches}" IsReadOnly="{Binding SelectedDevice.SelectedDataConfiguration.MethodId.CanFilterPitch, Converter={StaticResource InvertedBooleanConverter}}" IsEnabled="{Binding SelectedDevice.SelectedDataConfiguration.MethodId.CanFilterPitch}" DisplayMemberPath="Name" SelectedValueMemberPath="Id"/>
                                    <telerik:GridViewDataColumn Header="Duration">
                                        <telerik:GridViewDataColumn.CellTemplate>
                                            <DataTemplate>
                                                <telerik:RadNumericUpDown Minimum="1" Maximum="1000" IsInteger="True" Width="50" Margin="2" Value="{Binding Duration, Mode=TwoWay}"/>
                                            </DataTemplate>
                                        </telerik:GridViewDataColumn.CellTemplate>
                                    </telerik:GridViewDataColumn>
                                </telerik:RadGridView.Columns>
                            </telerik:RadGridView>

 

I have a Wrapper class I use for the itemssource for the comboboxes:

    public class TournamentSatelliteWrapper
    {
        public TournamentInfo Tournament { get; set; }
        public List<ClassInfo> Classes { get; set; }
        public List<GroupInfo> Groups { get; set; }
        public List<PitchInfo> Pitches { get; set; }
    }

Now, when I select a method where I can filter by division and group, these initial lists are filled correctly. But the list of groups are all groups..across divisions. So, when I select division (class), I have created a converter to alter the list of the groups:

    public class GroupsByDivisionConverter : IMultiValueConverter
    {
        public object Convert(object[] values, Type targetType, object parameter, CultureInfo culture)
        {
            Guid? classId = values[1] == DependencyProperty.UnsetValue ? null : values[1] as Guid?;

            if (values[0] is List<GroupInfo>)
            {
                List<GroupInfo> groups = (List<GroupInfo>)values[0];

                if (classId.HasValue)
                    groups = groups.Where(x => x.Class.Id == classId.Value).ToList();

                return groups;
            }

            // fallback
            return values[0];
        }

        public object[] ConvertBack(object value, Type[] targetTypes, object parameter, CultureInfo culture)
        {
            throw new NotImplementedException();
        }
    }

All this works fine... except that when I switch between the different rows, I only see the name of the selected group for the selected row. I can see the issue, I am just not sure how to get around this. 

I can understand that the itemssource list does not contain the referenced item of the selected group when looking at a row where a different division is selected.. when applying the converter... the resulting list is the source for all the cells (each row). How could I only alter the list for the selected row? and the other cells keep their altered lists accordingly to have the selected group name display correctly?

hhgm
Top achievements
Rank 1
Iron
Iron
Iron
 asked on 22 May 2022
1 answer
96 views

Hi,everyone,

I choose the MaterialTheme for my window and it works as expected after changing  my  MaterialPalette.Palette .  But after using the SplashScreen, the Palette  setting seems to have failed. 

And the Palette  didn‘t work in  SplashScreen either.

 What's wrong  with my steps?

Thank you for your help!

Martin Ivanov
Telerik team
 answered on 20 May 2022
0 answers
529 views

I am sure that I am missing something basic here, but I cant get this control to behave. I tried a number of different things to get the data in the ObservableCollection to show up in the gridview with no luck.

(Using .netcore 3.0 libs)

The gridview is bound to the following property in the xaml .

                <telerik:RadGridView
                        VerticalAlignment="Top" 
                        x:Name="ProdRecordsGridView"
                        Grid.ColumnSpan="3" 
                        Grid.Row="1" 
                        AutoGenerateColumns="false"
                        ItemsSource="{Binding ProductionRecords}"
                        Margin="5"
                        SelectedItem="{Binding SelectedProductionRecord}">
                    <telerik:RadGridView.Columns>
                        <telerik:GridViewDataColumn 
                            UniqueName="DatePartProduced"
                            DataMemberBinding="{Binding ProductionDate }"
                            IsFilterable="False"
                            DataFormatString="d"
                            EditTriggers="Default"
                            Header="ProdDate" />
                    </telerik:RadGridView.Columns>
                </telerik:RadGridView>

 

The ViewModel has the following Property

public ObservableCollection<ProductionRecordModel> ProductionRecords { get => _records; set => _records = value; } 

The grid control appears to be bound correctly to the ObserveableCollection, because setting a breakpoint on the ProductionRecordModel.ProductionDate getter, (the first column in the grid is bound to this property) is called for each element in the collection.  

There just does not appear to be any data in the gridview, I am stumped.

 

Any ideas what I am doing wrong here?

 

Thanks

-Sean

 

 

 

Sean
Top achievements
Rank 2
Iron
 asked on 19 May 2022
1 answer
157 views

How can I add Sorting to the DropDown GridView, so that when the User first opens the DropDown, the GridView is already sorted on one or more columns?

Martin Ivanov
Telerik team
 answered on 19 May 2022
1 answer
272 views

I have a panelbaritem that contains a grid. When the grid is expanded I get the scrollbar as expected. I am able to scroll up/down by dragging the scrollbar button up/down. However, I cannot use the mousewheel to scroll.

Is there any special setting to enable mouse wheel scrolling.

Just to make sure that it is not a problem with my project, I created a small test project and see the same behavior.

Stenly
Telerik team
 answered on 18 May 2022
1 answer
123 views

I was wondering if it would be possible to overlay an arrow on a task in a Radganttview.

I leave you an example photo of what I want to do.

Stenly
Telerik team
 answered on 18 May 2022
1 answer
172 views

Hi,

I have a question for the problem related radpane resources.

In my project, radpane contains content which has sometimes more than 300mb of RAM for each instance(composed of telerik controls, GroupView etc.), so I really need to dispose radpane resources.

 

I followed instructions after searching some references, and it said that I should call radpane.RemoveFromParent(); for it to be garbage collected.

However, it is not working. The resources still remains same after even afeter calling the method.

The problem arises when radpane content is user control with only managed resources, which to be collected by GC.

 

Here is my code.

<RadDock>

   <RadPaneGroup>

          new <radpane> is created each time..

   </RadPaneGroup>

</RadDock>

 

When radpane is closed...

RadDock.CloseEvent += RaiseRadpaneCloseEvent();

RaiseRadpaneCloseEvent(object sender, eventargs e)

{

                // small codes to call radpane.....

 

                // here is radPane code.

                if (radPane != null)
                {
                    radPane.RemoveFromParent();

                    radPane.Content = null;
                    radPane.Header = null;
                    radPane.DataContext = null;
                    radPane.IsActive = false;
                    radPane.IsEnabled = false;
                    radPane = null;
                }

                // this works fine. When the content is UserControl

                // only some control is Idisposable, put only when unmanaged resources exist inside control .

                MethodInfo method = this.userControl.GetType().GetMethod("Dispose");
                if (method == null) return;

                method.Invoke(this.userControl, null);

}

 

Hope to get an answer quickly. Thanks.

 

Martin Ivanov
Telerik team
 answered on 17 May 2022
Narrow your results
Selected tags
Tags
+? more
Top users last month
Rob
Top achievements
Rank 3
Iron
Iron
Iron
Atul
Top achievements
Rank 1
Iron
Iron
Iron
Alexander
Top achievements
Rank 1
Veteran
Iron
Serkan
Top achievements
Rank 1
Iron
Shawn
Top achievements
Rank 1
Iron
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Rob
Top achievements
Rank 3
Iron
Iron
Iron
Atul
Top achievements
Rank 1
Iron
Iron
Iron
Alexander
Top achievements
Rank 1
Veteran
Iron
Serkan
Top achievements
Rank 1
Iron
Shawn
Top achievements
Rank 1
Iron
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?